lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140210090948.02266f38@gandalf.local.home>
Date:	Mon, 10 Feb 2014 09:09:48 -0500
From:	Steven Rostedt <rostedt@...dmis.org>
To:	Dongsheng Yang <yangds.fnst@...fujitsu.com>
Cc:	Namhyung Kim <namhyung@...nel.org>, linux-kernel@...r.kernel.org,
	peterz@...radead.org, raistlin@...ux.it, juri.lelli@...il.com,
	clark.williams@...il.com, mingo@...hat.com
Subject: Re: [PATCH 1/3] sched: Move the priority specific bits into a new
 header file.

On Mon, 10 Feb 2014 10:56:34 +0800
Dongsheng Yang <yangds.fnst@...fujitsu.com> wrote:

> >> diff --git a/include/linux/sched.h b/include/linux/sched.h
> >> index 68a0e84..ba1b732 100644
> >> --- a/include/linux/sched.h
> >> +++ b/include/linux/sched.h
> >> @@ -3,6 +3,10 @@
> >>   
> >>   #include <uapi/linux/sched.h>
> >>   
> >> +#ifndef _SCHED_PRIO_H
> >> +#include <linux/sched/prio.h>
> >> +#endif /* #ifndef _SCHED_PRIO_H */
> > It seems you don't need to use #ifndef-#endif pair to include a header
> > file?
> 
> Sorry for the late reply, coming back from vacation for Chinese Spring 
> Festival.
> 
> The reason I use #ifndef-#endif here is that there are lots of files,
>   such as kernel/sched/sched.h, are including <linux/sched.h> and
> <linux/sched/rt.h>. And both of them are including prio.h.
> 
> I am not sure should we avoid reincluding a file and how.
> 
> Could you help to give me some suggestion of it. Thanx :)


That's why you have:

+++ b/include/linux/sched/prio.h
@@ -0,0 +1,23 @@
+#ifndef _SCHED_PRIO_H
+#define _SCHED_PRIO_H

The first time a header gets included, it checks if _SCHED_PRIO_H is
defined, if not, it defines it and continues. Otherwise it skips the
content of the file.

This is so standard practice that CPP (C Pre-Processor) optimizes this
by checking if this exists and caches it. It wont even open the file
the second time it sees it included.

-- Steve
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ