On Tue 28-08-07 21:51:28, Andrew Morton wrote: > On Tue, 28 Aug 2007 16:13:18 +0200 Jan Kara <[EMAIL PROTECTED]> wrote: > > > +static void send_warning(const struct dquot *dquot, const char warntype) > > +{ > > + static unsigned long seq; > > + struct sk_buff *skb; > > + void *msg_head; > > + int ret; > > + > > + skb = genlmsg_new(QUOTA_NL_MSG_SIZE, GFP_NOFS); > > + if (!skb) { > > + printk(KERN_ERR > > + "VFS: Not enough memory to send quota warning.\n"); > > + return; > > + } > > + msg_head = genlmsg_put(skb, 0, seq++, "a_genl_family, 0, > > QUOTA_NL_C_WARNING); > > The access to seq is racy, isn't it? > > If so, that can be solved with a lock, or with atomic_add_return(). You're right. I've made atomic_t from seq. Thanks for spotting this.
Honza -- Jan Kara <[EMAIL PROTECTED]> SuSE CR Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/