Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 06 Feb 2015 16:54:31 -0500
From:      John Baldwin <jhb@freebsd.org>
To:        Ivan Klymenko <fidaj@ukr.net>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r278320 - in head: contrib/mdocml lib lib/libdevctl share/mk sys/dev/acpica sys/dev/pci sys/kern sys/sys usr.sbin usr.sbin/devctl
Message-ID:  <2382517.uRm602S1Mu@ralph.baldwin.cx>
In-Reply-To: <20150206215810.532ce926@nonamehost.local>
References:  <201502061609.t16G92rn091851@svn.freebsd.org> <20150206215810.532ce926@nonamehost.local>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, February 06, 2015 09:58:10 PM Ivan Klymenko wrote:
> =D0=92 Fri, 6 Feb 2015 16:09:02 +0000 (UTC)
>=20
> John Baldwin <jhb@FreeBSD.org> =D0=BF=D0=B8=D1=88=D0=B5=D1=82:
> > Author: jhb
> > Date: Fri Feb  6 16:09:01 2015
> > New Revision: 278320
> > URL: https://svnweb.freebsd.org/changeset/base/278320
> >=20
> > Log:
> >   Add a new device control utility for new-bus devices called
> >=20
> > devctl.  This allows the user to request administrative changes to
> > individual devices such as attach or detaching drivers or disabling=

> > and re-enabling devices.
> >=20
> >   - Add a new /dev/devctl2 character device which uses ioctls for
> >=20
> > device requests.  The ioctls use a common 'struct devreq' which is
> > somewhat similar to 'struct ifreq'.
> >=20
> >   - The ioctls identify the device to operate on via a string.  Thi=
s
> >  =20
> >     string can either by the device's name, or it can be a
> >=20
> > bus-specific address.  (For unattached devices, a bus address is th=
e
> > only way to locate a device.)  Bus drivers register an eventhandler=

> > to claim unrecognized device names that the driver recognizes as a
> > valid address. Two buses currently support addresses: ACPI recogniz=
es
> > any device in the ACPI namespace via its full path starting with "\=
"
> > and the PCI bus driver recognizes an address specification of
> >=20
> >     'pci[<domain>:]<bus>:<slot>:<func>' (identical to the PCI selec=
tor
> >     strings supported by pciconf).
> >  =20
> >   - To make it easier to cut and paste, change the PnP location str=
ing
> >  =20
> >     in the PCI bus driver to output a full PCI selector string rath=
er
> >     than 'slot=3D<slot> function=3D<func>'.
> >  =20
> >   - Add a devctl(3) interface in libdevctl which provides a wrapper=

> >=20
> > around the ioctls and is the preferred interface for other userland=

> > code.
> >=20
> >   - Add a devctl(8) program which is a simple wrapper around the
> >=20
> > requests supported by devctl(3).
> >=20
> >   - Add a device_is_suspended() function to check DF_SUSPENDED.
> >   - Add a resource_unset_value() function that can be used to remov=
e a
> >  =20
> >     hint from the kernel environment.  This is used to clear a
> >     hint.<driver>.<unit>.disabled hint when re-enabling a boot-time=

> >     disabled device.
> >  =20
> >   Reviewed by:=09imp (parts)
> >   Requested by:=09imp (changing PCI location string)
> >   Relnotes:=09yes
> >=20
> > Added:
> >   head/lib/libdevctl/
> >   head/lib/libdevctl/Makefile   (contents, props changed)
> >   head/lib/libdevctl/devctl.3   (contents, props changed)
> >   head/lib/libdevctl/devctl.c   (contents, props changed)
> >   head/lib/libdevctl/devctl.h   (contents, props changed)
> >   head/usr.sbin/devctl/
> >   head/usr.sbin/devctl/Makefile   (contents, props changed)
> >   head/usr.sbin/devctl/devctl.8   (contents, props changed)
> >   head/usr.sbin/devctl/devctl.c   (contents, props changed)
> >=20
> > Modified:
> >   head/contrib/mdocml/lib.in
> >   head/lib/Makefile
> >   head/share/mk/bsd.libnames.mk
> >   head/share/mk/src.libnames.mk
> >   head/sys/dev/acpica/acpi.c
> >   head/sys/dev/pci/pci.c
> >   head/sys/kern/subr_bus.c
> >   head/sys/kern/subr_hints.c
> >   head/sys/sys/bus.h
> >   head/usr.sbin/Makefile
> >=20
> > Modified: head/contrib/mdocml/lib.in
>=20
> ...
> --- alias_dummy.o ---
> /usr/local/libexec/ccache/world/cc -target x86_64-unknown-freebsd11.0=
  -O2
> -pipe -mmmx -msse -msse2 -msse3 -mssse3 -msse4 -msse4.1 -msse4.2 -mav=
x
> -maes -mpclmul -march=3Dnative  -std=3Dgnu99 -fstack-protector -Wsyst=
em-headers
> -Werror -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int
> -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-valu=
e
> -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
> -Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter -Wno-parenth=
eses
> -Qunused-arguments -c
> /usr/src/lib/libalias/modules/dummy/../../../../sys/netinet/libalias/=
alias_
> dummy.c -o alias_dummy.o --- libalias_dummy.so ---
> building shared library libalias_dummy.so
> --- all_subdir_libdevctl ---
> /usr/src/lib/libdevctl/devctl.c:38:35: error: declaration of 'struct =
devreq'
> will not be visible outside of this function [-Werror,-Wvisibility]
> devctl_request(u_long cmd, struct devreq *req)
>                                   ^

Your sys/sys/bus.h is not up to date.  A build on a separate machine fr=
om=20
where I committed this using a pristine tree worked fine, so I think th=
is must=20
be a local issue?

--=20
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2382517.uRm602S1Mu>