svn commit: r256884 - in head: share/man/man9 sys/geom

Adrian Chadd adrian at freebsd.org
Tue Oct 22 18:55:41 UTC 2013


Hi,

I definitely agree with marking 0x1 as being reserved, at least for the
lifecycle of 10.x up until 11.x.



-adrian



On 22 October 2013 11:47, John Baldwin <jhb at freebsd.org> wrote:

> On Tuesday, October 22, 2013 6:21:21 am Alexander Motin wrote:
> > Author: mav
> > Date: Tue Oct 22 10:21:20 2013
> > New Revision: 256884
> > URL: http://svnweb.freebsd.org/changeset/base/256884
> >
> > Log:
> >   Remove Giant-locked drivers support (DISKFLAG_NEEDSGIANT flag) from
> disk(9).
> >
> >   Since at least FreeBSD 7 we had only four of them in the base tree, and
> >   in head branch, thanks to jhb@, we have no any for more then a year.
>
> I had this additional change in my local branch, what do you think of it?
>  We
> should probably keep it unless we bump DISK_VERSION and drop support for
> older
> disk structures.  I think we could probably merge it to 10 along with your
> change as well:
>
> --- //depot/vendor/freebsd/src/sys/geom/geom_disk.c
> +++ //depot/user/jhb/cleanup/sys/geom/geom_disk.c
> @@ -654,6 +654,13 @@
>                     dp->d_name, dp->d_unit);
>                 return;
>         }
> +       if (dp->d_flags & DISKFLAG_RESERVED) {
> +               printf("WARNING: Attempt to add non-MPSAFE disk %s%d\n",
> +                   dp->d_name, dp->d_unit);
> +               printf("WARNING: Ignoring disk %s%d\n",
> +                   dp->d_name, dp->d_unit);
> +               return;
> +       }
>         KASSERT(dp->d_strategy != NULL, ("disk_create need d_strategy"));
>         KASSERT(dp->d_name != NULL, ("disk_create need d_name"));
>         KASSERT(*dp->d_name != 0, ("disk_create need d_name"));
> --- //depot/vendor/freebsd/src/sys/geom/geom_disk.h
> +++ //depot/user/jhb/cleanup/sys/geom/geom_disk.h
> @@ -102,6 +102,7 @@
>         void                    *d_drv1;
>  };
>
> +#define DISKFLAG_RESERVED      0x1     /* Was NEEDSGIANT */
>  #define DISKFLAG_OPEN          0x2
>  #define DISKFLAG_CANDELETE     0x4
>  #define DISKFLAG_CANFLUSHCACHE 0x8
>
> --
> John Baldwin
>


More information about the svn-src-all mailing list