The following reply was made to PR kern/175759; it has been noted by GNATS.

From: Andrey Simonenko <si...@comsys.ntu-kpi.kiev.ua>
To: Gleb Smirnoff <gleb...@freebsd.org>
Cc: freebsd-gnats-sub...@freebsd.org
Subject: Re: kern/175759: Correct data types for fields of struct qm_trace{}
 from <sys/queue.h>
Date: Mon, 4 Feb 2013 17:12:57 +0200

 repost: forgot to send to the group.
 
 On Mon, Feb 04, 2013 at 06:14:07PM +0400, Gleb Smirnoff wrote:
 >   Andrey,
 > 
 >   any additional comments for the attached patch. Is it ok from your
 > viewpoint?
 > 
 > -- 
 > Totus tuus, Glebius.
 
 > Index: queue.h
 > ===================================================================
 > --- queue.h  (revision 245741)
 > +++ queue.h  (working copy)
 > @@ -105,13 +105,14 @@
 >  #ifdef QUEUE_MACRO_DEBUG
 >  /* Store the last 2 places the queue element or head was altered */
 >  struct qm_trace {
 > -    char * lastfile;
 > -    int lastline;
 > -    char * prevfile;
 > -    int prevline;
 > +    const char * lastfile;
 > +    unsigned long lastline;
 > +    const char * prevfile;
 > +    unsigned long prevline;
 >  };
 >  
 >  #define     TRACEBUF        struct qm_trace trace;
 > +#define     TRACEBUF_INITIALIZER    { __FILE__, __LINE__, NULL, 0 } ,
 >  #define     TRASHIT(x)      do {(x) = (void *)-1;} while (0)
 >  #define     QMD_SAVELINK(name, link)        void **name = (void *)&(link)
 >  
 > @@ -134,6 +135,7 @@
 >  #define     QMD_TRACE_HEAD(head)
 >  #define     QMD_SAVELINK(name, link)
 >  #define     TRACEBUF
 > +#define     TRACEBUF_INITIALIZER
 >  #define     TRASHIT(x)
 >  #endif      /* QUEUE_MACRO_DEBUG */
 >  
 > @@ -461,7 +463,7 @@
 >  }
 >  
 >  #define     TAILQ_HEAD_INITIALIZER(head)                                    
 > \
 > -    { NULL, &(head).tqh_first }
 > +    { NULL, &(head).tqh_first, TRACEBUF_INITIALIZER }
 >  
 >  #define     TAILQ_ENTRY(type)                                               
 > \
 >  struct {                                                            \
 
 Looks correct.
 
 What do you think about this idea:
 
 http://lists.freebsd.org/pipermail/freebsd-bugs/2013-February/051665.html
 
 it has more generic approach for such kind of debugging.
_______________________________________________
freebsd-bugs@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "freebsd-bugs-unsubscr...@freebsd.org"

Reply via email to