Running out of bits p_flag (sys/sys/proc.h)
Konstantin Belousov
kostikbel at gmail.com
Sun Feb 17 04:17:11 UTC 2013
On Sun, Feb 17, 2013 at 04:25:22AM +0100, Davide Italiano wrote:
> On Sun, Feb 17, 2013 at 2:58 AM, hiren panchasara
> <hiren.panchasara at gmail.com> wrote:
> > With revision=246484, it seems we have hit the limit.
> > At $WORK we have one more flag and to accommodate that we need to bump this up.
> >
> > Can p_flag be bumped up to u_long?
> >
> > Index: proc.h
> > ===================================================================
> > --- proc.h (revision 245937)
> > +++ proc.h (working copy)
> > @@ -497,7 +497,7 @@
> > * The following don't make too much sense.
> > * See the td_ or ke_ versions of the same flags.
> > */
> > - int p_flag; /* (c) P_* flags. */
> > + u_long p_flag; /* (c) P_* flags. */
> > enum {
> > PRS_NEW = 0, /* In creation */
> > PRS_NORMAL, /* threads can be run. */
> >
> > Thanks,
> > Hiren
> > _______________________________________________
> > freebsd-current at freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-current
> > To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
>
> I see at least two problems here:
> - The change you propose may result in a KBI breakage.
> - sizeof(unsigned long) == 4 on some archs, e.g. my i386 Atom, which
> makes the change uneffective.
You are right. The solution is to add one more flags member, e.g.
p_flag2. They are free.
The issue I see with the approach, is with the kinfo and userspace
reporting of the flag2. I think that some uninteresting (for
usermode) flag could be moved to flag2 outright.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 834 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-current/attachments/20130217/3df916f8/attachment.sig>
More information about the freebsd-current
mailing list