From 5f6b021812f52051183f9e9893d5b011ec80ac25 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Fri, 29 Oct 2010 23:01:33 +0200 Subject: [PATCH] 3rdparty: update syslinux to syslinux-4.03 Signed-off-by: Stephan Raue --- config/release/3rdparty/syslinux/NEWS | 14 + .../3rdparty/syslinux/doc/CodingStyle.txt | 831 ++++++++++++++++++ .../syslinux/doc/SubmittingPatches.txt | 568 ++++++++++++ .../3rdparty/syslinux/doc/extlinux.txt | 2 + .../3rdparty/syslinux/doc/syslinux.txt | 17 +- .../3rdparty/syslinux/dos/syslinux.com | Bin 35843 -> 35774 bytes .../3rdparty/syslinux/win32/syslinux.exe | Bin 72704 -> 72192 bytes 7 files changed, 1424 insertions(+), 8 deletions(-) create mode 100644 config/release/3rdparty/syslinux/doc/CodingStyle.txt create mode 100644 config/release/3rdparty/syslinux/doc/SubmittingPatches.txt diff --git a/config/release/3rdparty/syslinux/NEWS b/config/release/3rdparty/syslinux/NEWS index 8ecb6cd974..48cbbea6ea 100644 --- a/config/release/3rdparty/syslinux/NEWS +++ b/config/release/3rdparty/syslinux/NEWS @@ -2,6 +2,20 @@ Starting with 1.47, changes marked with SYSLINUX, PXELINUX, ISOLINUX or EXTLINUX apply to that specific program only; other changes apply to all derivatives. +Changes in 4.03: + * Don't hang if no configuration file is found. + * Better support for booting from MBRs which don't pass + handover information. + * EXTLINUX: Try to be smarter about finding the partition + offset. + * chain.c32: support chainloading Dell Real Mode Kernel (Gene + Cumm). + * chain.c32: fix booting in CHS mode. + * rosh.c32 updated (Gene Cumm). + * Fix the -s option to the syslinux/extlinux installer (Arwin + Vosselman). + * isohybrid: fix padding of large images (PJ Pandit). + Changes in 4.02: * SYSLINUX: correctly handle the case where the -d option is specified with a non-absolute path, i.e. "syslinux -d diff --git a/config/release/3rdparty/syslinux/doc/CodingStyle.txt b/config/release/3rdparty/syslinux/doc/CodingStyle.txt new file mode 100644 index 0000000000..e79e65a6b3 --- /dev/null +++ b/config/release/3rdparty/syslinux/doc/CodingStyle.txt @@ -0,0 +1,831 @@ +Syslinux uses Linux kernel coding style, except that we are "heretic" +in the sense of using 4 spaces instead of 8 for indentation. + +This coding style will be applied after the 3.81 release. + + + ------------------------------------------------- + + Linux kernel coding style + +This is a short document describing the preferred coding style for the +linux kernel. Coding style is very personal, and I won't _force_ my +views on anybody, but this is what goes for anything that I have to be +able to maintain, and I'd prefer it for most other things too. Please +at least consider the points made here. + +First off, I'd suggest printing out a copy of the GNU coding standards, +and NOT read it. Burn them, it's a great symbolic gesture. + +Anyway, here goes: + + + Chapter 1: Indentation + +Tabs are 8 characters, and thus indentations are also 8 characters. +There are heretic movements that try to make indentations 4 (or even 2!) +characters deep, and that is akin to trying to define the value of PI to +be 3. + +Rationale: The whole idea behind indentation is to clearly define where +a block of control starts and ends. Especially when you've been looking +at your screen for 20 straight hours, you'll find it a lot easier to see +how the indentation works if you have large indentations. + +Now, some people will claim that having 8-character indentations makes +the code move too far to the right, and makes it hard to read on a +80-character terminal screen. The answer to that is that if you need +more than 3 levels of indentation, you're screwed anyway, and should fix +your program. + +In short, 8-char indents make things easier to read, and have the added +benefit of warning you when you're nesting your functions too deep. +Heed that warning. + +The preferred way to ease multiple indentation levels in a switch statement is +to align the "switch" and its subordinate "case" labels in the same column +instead of "double-indenting" the "case" labels. E.g.: + + switch (suffix) { + case 'G': + case 'g': + mem <<= 30; + break; + case 'M': + case 'm': + mem <<= 20; + break; + case 'K': + case 'k': + mem <<= 10; + /* fall through */ + default: + break; + } + + +Don't put multiple statements on a single line unless you have +something to hide: + + if (condition) do_this; + do_something_everytime; + +Don't put multiple assignments on a single line either. Kernel coding style +is super simple. Avoid tricky expressions. + +Outside of comments, documentation and except in Kconfig, spaces are never +used for indentation, and the above example is deliberately broken. + +Get a decent editor and don't leave whitespace at the end of lines. + + + Chapter 2: Breaking long lines and strings + +Coding style is all about readability and maintainability using commonly +available tools. + +The limit on the length of lines is 80 columns and this is a strongly +preferred limit. + +Statements longer than 80 columns will be broken into sensible chunks. +Descendants are always substantially shorter than the parent and are placed +substantially to the right. The same applies to function headers with a long +argument list. Long strings are as well broken into shorter strings. The +only exception to this is where exceeding 80 columns significantly increases +readability and does not hide information. + +void fun(int a, int b, int c) +{ + if (condition) + printk(KERN_WARNING "Warning this is a long printk with " + "3 parameters a: %u b: %u " + "c: %u \n", a, b, c); + else + next_statement; +} + + Chapter 3: Placing Braces and Spaces + +The other issue that always comes up in C styling is the placement of +braces. Unlike the indent size, there are few technical reasons to +choose one placement strategy over the other, but the preferred way, as +shown to us by the prophets Kernighan and Ritchie, is to put the opening +brace last on the line, and put the closing brace first, thusly: + + if (x is true) { + we do y + } + +This applies to all non-function statement blocks (if, switch, for, +while, do). E.g.: + + switch (action) { + case KOBJ_ADD: + return "add"; + case KOBJ_REMOVE: + return "remove"; + case KOBJ_CHANGE: + return "change"; + default: + return NULL; + } + +However, there is one special case, namely functions: they have the +opening brace at the beginning of the next line, thus: + + int function(int x) + { + body of function + } + +Heretic people all over the world have claimed that this inconsistency +is ... well ... inconsistent, but all right-thinking people know that +(a) K&R are _right_ and (b) K&R are right. Besides, functions are +special anyway (you can't nest them in C). + +Note that the closing brace is empty on a line of its own, _except_ in +the cases where it is followed by a continuation of the same statement, +ie a "while" in a do-statement or an "else" in an if-statement, like +this: + + do { + body of do-loop + } while (condition); + +and + + if (x == y) { + .. + } else if (x > y) { + ... + } else { + .... + } + +Rationale: K&R. + +Also, note that this brace-placement also minimizes the number of empty +(or almost empty) lines, without any loss of readability. Thus, as the +supply of new-lines on your screen is not a renewable resource (think +25-line terminal screens here), you have more empty lines to put +comments on. + +Do not unnecessarily use braces where a single statement will do. + +if (condition) + action(); + +This does not apply if one branch of a conditional statement is a single +statement. Use braces in both branches. + +if (condition) { + do_this(); + do_that(); +} else { + otherwise(); +} + + 3.1: Spaces + +Linux kernel style for use of spaces depends (mostly) on +function-versus-keyword usage. Use a space after (most) keywords. The +notable exceptions are sizeof, typeof, alignof, and __attribute__, which look +somewhat like functions (and are usually used with parentheses in Linux, +although they are not required in the language, as in: "sizeof info" after +"struct fileinfo info;" is declared). + +So use a space after these keywords: + if, switch, case, for, do, while +but not with sizeof, typeof, alignof, or __attribute__. E.g., + s = sizeof(struct file); + +Do not add spaces around (inside) parenthesized expressions. This example is +*bad*: + + s = sizeof( struct file ); + +When declaring pointer data or a function that returns a pointer type, the +preferred use of '*' is adjacent to the data name or function name and not +adjacent to the type name. Examples: + + char *linux_banner; + unsigned long long memparse(char *ptr, char **retptr); + char *match_strdup(substring_t *s); + +Use one space around (on each side of) most binary and ternary operators, +such as any of these: + + = + - < > * / % | & ^ <= >= == != ? : + +but no space after unary operators: + & * + - ~ ! sizeof typeof alignof __attribute__ defined + +no space before the postfix increment & decrement unary operators: + ++ -- + +no space after the prefix increment & decrement unary operators: + ++ -- + +and no space around the '.' and "->" structure member operators. + +Do not leave trailing whitespace at the ends of lines. Some editors with +"smart" indentation will insert whitespace at the beginning of new lines as +appropriate, so you can start typing the next line of code right away. +However, some such editors do not remove the whitespace if you end up not +putting a line of code there, such as if you leave a blank line. As a result, +you end up with lines containing trailing whitespace. + +Git will warn you about patches that introduce trailing whitespace, and can +optionally strip the trailing whitespace for you; however, if applying a series +of patches, this may make later patches in the series fail by changing their +context lines. + + + Chapter 4: Naming + +C is a Spartan language, and so should your naming be. Unlike Modula-2 +and Pascal programmers, C programmers do not use cute names like +ThisVariableIsATemporaryCounter. A C programmer would call that +variable "tmp", which is much easier to write, and not the least more +difficult to understand. + +HOWEVER, while mixed-case names are frowned upon, descriptive names for +global variables are a must. To call a global function "foo" is a +shooting offense. + +GLOBAL variables (to be used only if you _really_ need them) need to +have descriptive names, as do global functions. If you have a function +that counts the number of active users, you should call that +"count_active_users()" or similar, you should _not_ call it "cntusr()". + +Encoding the type of a function into the name (so-called Hungarian +notation) is brain damaged - the compiler knows the types anyway and can +check those, and it only confuses the programmer. No wonder MicroSoft +makes buggy programs. + +LOCAL variable names should be short, and to the point. If you have +some random integer loop counter, it should probably be called "i". +Calling it "loop_counter" is non-productive, if there is no chance of it +being mis-understood. Similarly, "tmp" can be just about any type of +variable that is used to hold a temporary value. + +If you are afraid to mix up your local variable names, you have another +problem, which is called the function-growth-hormone-imbalance syndrome. +See chapter 6 (Functions). + + + Chapter 5: Typedefs + +Please don't use things like "vps_t". + +It's a _mistake_ to use typedef for structures and pointers. When you see a + + vps_t a; + +in the source, what does it mean? + +In contrast, if it says + + struct virtual_container *a; + +you can actually tell what "a" is. + +Lots of people think that typedefs "help readability". Not so. They are +useful only for: + + (a) totally opaque objects (where the typedef is actively used to _hide_ + what the object is). + + Example: "pte_t" etc. opaque objects that you can only access using + the proper accessor functions. + + NOTE! Opaqueness and "accessor functions" are not good in themselves. + The reason we have them for things like pte_t etc. is that there + really is absolutely _zero_ portably accessible information there. + + (b) Clear integer types, where the abstraction _helps_ avoid confusion + whether it is "int" or "long". + + u8/u16/u32 are perfectly fine typedefs, although they fit into + category (d) better than here. + + NOTE! Again - there needs to be a _reason_ for this. If something is + "unsigned long", then there's no reason to do + + typedef unsigned long myflags_t; + + but if there is a clear reason for why it under certain circumstances + might be an "unsigned int" and under other configurations might be + "unsigned long", then by all means go ahead and use a typedef. + + (c) when you use sparse to literally create a _new_ type for + type-checking. + + (d) New types which are identical to standard C99 types, in certain + exceptional circumstances. + + Although it would only take a short amount of time for the eyes and + brain to become accustomed to the standard types like 'uint32_t', + some people object to their use anyway. + + Therefore, the Linux-specific 'u8/u16/u32/u64' types and their + signed equivalents which are identical to standard types are + permitted -- although they are not mandatory in new code of your + own. + + When editing existing code which already uses one or the other set + of types, you should conform to the existing choices in that code. + + (e) Types safe for use in userspace. + + In certain structures which are visible to userspace, we cannot + require C99 types and cannot use the 'u32' form above. Thus, we + use __u32 and similar types in all structures which are shared + with userspace. + +Maybe there are other cases too, but the rule should basically be to NEVER +EVER use a typedef unless you can clearly match one of those rules. + +In general, a pointer, or a struct that has elements that can reasonably +be directly accessed should _never_ be a typedef. + + + Chapter 6: Functions + +Functions should be short and sweet, and do just one thing. They should +fit on one or two screenfuls of text (the ISO/ANSI screen size is 80x24, +as we all know), and do one thing and do that well. + +The maximum length of a function is inversely proportional to the +complexity and indentation level of that function. So, if you have a +conceptually simple function that is just one long (but simple) +case-statement, where you have to do lots of small things for a lot of +different cases, it's OK to have a longer function. + +However, if you have a complex function, and you suspect that a +less-than-gifted first-year high-school student might not even +understand what the function is all about, you should adhere to the +maximum limits all the more closely. Use helper functions with +descriptive names (you can ask the compiler to in-line them if you think +it's performance-critical, and it will probably do a better job of it +than you would have done). + +Another measure of the function is the number of local variables. They +shouldn't exceed 5-10, or you're doing something wrong. Re-think the +function, and split it into smaller pieces. A human brain can +generally easily keep track of about 7 different things, anything more +and it gets confused. You know you're brilliant, but maybe you'd like +to understand what you did 2 weeks from now. + +In source files, separate functions with one blank line. If the function is +exported, the EXPORT* macro for it should follow immediately after the closing +function brace line. E.g.: + +int system_is_up(void) +{ + return system_state == SYSTEM_RUNNING; +} +EXPORT_SYMBOL(system_is_up); + +In function prototypes, include parameter names with their data types. +Although this is not required by the C language, it is preferred in Linux +because it is a simple way to add valuable information for the reader. + + + Chapter 7: Centralized exiting of functions + +Albeit deprecated by some people, the equivalent of the goto statement is +used frequently by compilers in form of the unconditional jump instruction. + +The goto statement comes in handy when a function exits from multiple +locations and some common work such as cleanup has to be done. + +The rationale is: + +- unconditional statements are easier to understand and follow +- nesting is reduced +- errors by not updating individual exit points when making + modifications are prevented +- saves the compiler work to optimize redundant code away ;) + +int fun(int a) +{ + int result = 0; + char *buffer = kmalloc(SIZE); + + if (buffer == NULL) + return -ENOMEM; + + if (condition1) { + while (loop1) { + ... + } + result = 1; + goto out; + } + ... +out: + kfree(buffer); + return result; +} + + Chapter 8: Commenting + +Comments are good, but there is also a danger of over-commenting. NEVER +try to explain HOW your code works in a comment: it's much better to +write the code so that the _working_ is obvious, and it's a waste of +time to explain badly written code. + +Generally, you want your comments to tell WHAT your code does, not HOW. +Also, try to avoid putting comments inside a function body: if the +function is so complex that you need to separately comment parts of it, +you should probably go back to chapter 6 for a while. You can make +small comments to note or warn about something particularly clever (or +ugly), but try to avoid excess. Instead, put the comments at the head +of the function, telling people what it does, and possibly WHY it does +it. + +When commenting the kernel API functions, please use the kernel-doc format. +See the files Documentation/kernel-doc-nano-HOWTO.txt and scripts/kernel-doc +for details. + +Linux style for comments is the C89 "/* ... */" style. +Don't use C99-style "// ..." comments. + +The preferred style for long (multi-line) comments is: + + /* + * This is the preferred style for multi-line + * comments in the Linux kernel source code. + * Please use it consistently. + * + * Description: A column of asterisks on the left side, + * with beginning and ending almost-blank lines. + */ + +It's also important to comment data, whether they are basic types or derived +types. To this end, use just one data declaration per line (no commas for +multiple data declarations). This leaves you room for a small comment on each +item, explaining its use. + + + Chapter 9: You've made a mess of it + +That's OK, we all do. You've probably been told by your long-time Unix +user helper that "GNU emacs" automatically formats the C sources for +you, and you've noticed that yes, it does do that, but the defaults it +uses are less than desirable (in fact, they are worse than random +typing - an infinite number of monkeys typing into GNU emacs would never +make a good program). + +So, you can either get rid of GNU emacs, or change it to use saner +values. To do the latter, you can stick the following in your .emacs file: + +(defun c-lineup-arglist-tabs-only (ignored) + "Line up argument lists by tabs, not spaces" + (let* ((anchor (c-langelem-pos c-syntactic-element)) + (column (c-langelem-2nd-pos c-syntactic-element)) + (offset (- (1+ column) anchor)) + (steps (floor offset c-basic-offset))) + (* (max steps 1) + c-basic-offset))) + +(add-hook 'c-mode-common-hook + (lambda () + ;; Add kernel style + (c-add-style + "linux-tabs-only" + '("linux" (c-offsets-alist + (arglist-cont-nonempty + c-lineup-gcc-asm-reg + c-lineup-arglist-tabs-only)))))) + +(add-hook 'c-mode-hook + (lambda () + (let ((filename (buffer-file-name))) + ;; Enable kernel mode for the appropriate files + (when (and filename + (string-match (expand-file-name "~/src/linux-trees") + filename)) + (setq indent-tabs-mode t) + (c-set-style "linux-tabs-only"))))) + +This will make emacs go better with the kernel coding style for C +files below ~/src/linux-trees. + +But even if you fail in getting emacs to do sane formatting, not +everything is lost: use "indent". + +Now, again, GNU indent has the same brain-dead settings that GNU emacs +has, which is why you need to give it a few command line options. +However, that's not too bad, because even the makers of GNU indent +recognize the authority of K&R (the GNU people aren't evil, they are +just severely misguided in this matter), so you just give indent the +options "-kr -i8" (stands for "K&R, 8 character indents"), or use +"scripts/Lindent", which indents in the latest style. + +"indent" has a lot of options, and especially when it comes to comment +re-formatting you may want to take a look at the man page. But +remember: "indent" is not a fix for bad programming. + + + Chapter 10: Kconfig configuration files + +For all of the Kconfig* configuration files throughout the source tree, +the indentation is somewhat different. Lines under a "config" definition +are indented with one tab, while help text is indented an additional two +spaces. Example: + +config AUDIT + bool "Auditing support" + depends on NET + help + Enable auditing infrastructure that can be used with another + kernel subsystem, such as SELinux (which requires this for + logging of avc messages output). Does not do system-call + auditing without CONFIG_AUDITSYSCALL. + +Features that might still be considered unstable should be defined as +dependent on "EXPERIMENTAL": + +config SLUB + depends on EXPERIMENTAL && !ARCH_USES_SLAB_PAGE_STRUCT + bool "SLUB (Unqueued Allocator)" + ... + +while seriously dangerous features (such as write support for certain +filesystems) should advertise this prominently in their prompt string: + +config ADFS_FS_RW + bool "ADFS write support (DANGEROUS)" + depends on ADFS_FS + ... + +For full documentation on the configuration files, see the file +Documentation/kbuild/kconfig-language.txt. + + + Chapter 11: Data structures + +Data structures that have visibility outside the single-threaded +environment they are created and destroyed in should always have +reference counts. In the kernel, garbage collection doesn't exist (and +outside the kernel garbage collection is slow and inefficient), which +means that you absolutely _have_ to reference count all your uses. + +Reference counting means that you can avoid locking, and allows multiple +users to have access to the data structure in parallel - and not having +to worry about the structure suddenly going away from under them just +because they slept or did something else for a while. + +Note that locking is _not_ a replacement for reference counting. +Locking is used to keep data structures coherent, while reference +counting is a memory management technique. Usually both are needed, and +they are not to be confused with each other. + +Many data structures can indeed have two levels of reference counting, +when there are users of different "classes". The subclass count counts +the number of subclass users, and decrements the global count just once +when the subclass count goes to zero. + +Examples of this kind of "multi-level-reference-counting" can be found in +memory management ("struct mm_struct": mm_users and mm_count), and in +filesystem code ("struct super_block": s_count and s_active). + +Remember: if another thread can find your data structure, and you don't +have a reference count on it, you almost certainly have a bug. + + + Chapter 12: Macros, Enums and RTL + +Names of macros defining constants and labels in enums are capitalized. + +#define CONSTANT 0x12345 + +Enums are preferred when defining several related constants. + +CAPITALIZED macro names are appreciated but macros resembling functions +may be named in lower case. + +Generally, inline functions are preferable to macros resembling functions. + +Macros with multiple statements should be enclosed in a do - while block: + +#define macrofun(a, b, c) \ + do { \ + if (a == 5) \ + do_this(b, c); \ + } while (0) + +Things to avoid when using macros: + +1) macros that affect control flow: + +#define FOO(x) \ + do { \ + if (blah(x) < 0) \ + return -EBUGGERED; \ + } while(0) + +is a _very_ bad idea. It looks like a function call but exits the "calling" +function; don't break the internal parsers of those who will read the code. + +2) macros that depend on having a local variable with a magic name: + +#define FOO(val) bar(index, val) + +might look like a good thing, but it's confusing as hell when one reads the +code and it's prone to breakage from seemingly innocent changes. + +3) macros with arguments that are used as l-values: FOO(x) = y; will +bite you if somebody e.g. turns FOO into an inline function. + +4) forgetting about precedence: macros defining constants using expressions +must enclose the expression in parentheses. Beware of similar issues with +macros using parameters. + +#define CONSTANT 0x4000 +#define CONSTEXP (CONSTANT | 3) + +The cpp manual deals with macros exhaustively. The gcc internals manual also +covers RTL which is used frequently with assembly language in the kernel. + + + Chapter 13: Printing kernel messages + +Kernel developers like to be seen as literate. Do mind the spelling +of kernel messages to make a good impression. Do not use crippled +words like "dont"; use "do not" or "don't" instead. Make the messages +concise, clear, and unambiguous. + +Kernel messages do not have to be terminated with a period. + +Printing numbers in parentheses (%d) adds no value and should be avoided. + +There are a number of driver model diagnostic macros in +which you should use to make sure messages are matched to the right device +and driver, and are tagged with the right level: dev_err(), dev_warn(), +dev_info(), and so forth. For messages that aren't associated with a +particular device, defines pr_debug() and pr_info(). + +Coming up with good debugging messages can be quite a challenge; and once +you have them, they can be a huge help for remote troubleshooting. Such +messages should be compiled out when the DEBUG symbol is not defined (that +is, by default they are not included). When you use dev_dbg() or pr_debug(), +that's automatic. Many subsystems have Kconfig options to turn on -DDEBUG. +A related convention uses VERBOSE_DEBUG to add dev_vdbg() messages to the +ones already enabled by DEBUG. + + + Chapter 14: Allocating memory + +The kernel provides the following general purpose memory allocators: +kmalloc(), kzalloc(), kcalloc(), and vmalloc(). Please refer to the API +documentation for further information about them. + +The preferred form for passing a size of a struct is the following: + + p = kmalloc(sizeof(*p), ...); + +The alternative form where struct name is spelled out hurts readability and +introduces an opportunity for a bug when the pointer variable type is changed +but the corresponding sizeof that is passed to a memory allocator is not. + +Casting the return value which is a void pointer is redundant. The conversion +from void pointer to any other pointer type is guaranteed by the C programming +language. + + + Chapter 15: The inline disease + +There appears to be a common misperception that gcc has a magic "make me +faster" speedup option called "inline". While the use of inlines can be +appropriate (for example as a means of replacing macros, see Chapter 12), it +very often is not. Abundant use of the inline keyword leads to a much bigger +kernel, which in turn slows the system as a whole down, due to a bigger +icache footprint for the CPU and simply because there is less memory +available for the pagecache. Just think about it; a pagecache miss causes a +disk seek, which easily takes 5 miliseconds. There are a LOT of cpu cycles +that can go into these 5 miliseconds. + +A reasonable rule of thumb is to not put inline at functions that have more +than 3 lines of code in them. An exception to this rule are the cases where +a parameter is known to be a compiletime constant, and as a result of this +constantness you *know* the compiler will be able to optimize most of your +function away at compile time. For a good example of this later case, see +the kmalloc() inline function. + +Often people argue that adding inline to functions that are static and used +only once is always a win since there is no space tradeoff. While this is +technically correct, gcc is capable of inlining these automatically without +help, and the maintenance issue of removing the inline when a second user +appears outweighs the potential value of the hint that tells gcc to do +something it would have done anyway. + + + Chapter 16: Function return values and names + +Functions can return values of many different kinds, and one of the +most common is a value indicating whether the function succeeded or +failed. Such a value can be represented as an error-code integer +(-Exxx = failure, 0 = success) or a "succeeded" boolean (0 = failure, +non-zero = success). + +Mixing up these two sorts of representations is a fertile source of +difficult-to-find bugs. If the C language included a strong distinction +between integers and booleans then the compiler would find these mistakes +for us... but it doesn't. To help prevent such bugs, always follow this +convention: + + If the name of a function is an action or an imperative command, + the function should return an error-code integer. If the name + is a predicate, the function should return a "succeeded" boolean. + +For example, "add work" is a command, and the add_work() function returns 0 +for success or -EBUSY for failure. In the same way, "PCI device present" is +a predicate, and the pci_dev_present() function returns 1 if it succeeds in +finding a matching device or 0 if it doesn't. + +All EXPORTed functions must respect this convention, and so should all +public functions. Private (static) functions need not, but it is +recommended that they do. + +Functions whose return value is the actual result of a computation, rather +than an indication of whether the computation succeeded, are not subject to +this rule. Generally they indicate failure by returning some out-of-range +result. Typical examples would be functions that return pointers; they use +NULL or the ERR_PTR mechanism to report failure. + + + Chapter 17: Don't re-invent the kernel macros + +The header file include/linux/kernel.h contains a number of macros that +you should use, rather than explicitly coding some variant of them yourself. +For example, if you need to calculate the length of an array, take advantage +of the macro + + #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) + +Similarly, if you need to calculate the size of some structure member, use + + #define FIELD_SIZEOF(t, f) (sizeof(((t*)0)->f)) + +There are also min() and max() macros that do strict type checking if you +need them. Feel free to peruse that header file to see what else is already +defined that you shouldn't reproduce in your code. + + + Chapter 18: Editor modelines and other cruft + +Some editors can interpret configuration information embedded in source files, +indicated with special markers. For example, emacs interprets lines marked +like this: + +-*- mode: c -*- + +Or like this: + +/* +Local Variables: +compile-command: "gcc -DMAGIC_DEBUG_FLAG foo.c" +End: +*/ + +Vim interprets markers that look like this: + +/* vim:set sw=8 noet */ + +Do not include any of these in source files. People have their own personal +editor configurations, and your source files should not override them. This +includes markers for indentation and mode configuration. People may use their +own custom mode, or may have some other magic method for making indentation +work correctly. + + + + Appendix I: References + +The C Programming Language, Second Edition +by Brian W. Kernighan and Dennis M. Ritchie. +Prentice Hall, Inc., 1988. +ISBN 0-13-110362-8 (paperback), 0-13-110370-9 (hardback). +URL: http://cm.bell-labs.com/cm/cs/cbook/ + +The Practice of Programming +by Brian W. Kernighan and Rob Pike. +Addison-Wesley, Inc., 1999. +ISBN 0-201-61586-X. +URL: http://cm.bell-labs.com/cm/cs/tpop/ + +GNU manuals - where in compliance with K&R and this text - for cpp, gcc, +gcc internals and indent, all available from http://www.gnu.org/manual/ + +WG14 is the international standardization working group for the programming +language C, URL: http://www.open-std.org/JTC1/SC22/WG14/ + +Kernel CodingStyle, by greg@kroah.com at OLS 2002: +http://www.kroah.com/linux/talks/ols_2002_kernel_codingstyle_talk/html/ + +-- +Last updated on 2007-July-13. + diff --git a/config/release/3rdparty/syslinux/doc/SubmittingPatches.txt b/config/release/3rdparty/syslinux/doc/SubmittingPatches.txt new file mode 100644 index 0000000000..dd764a7abf --- /dev/null +++ b/config/release/3rdparty/syslinux/doc/SubmittingPatches.txt @@ -0,0 +1,568 @@ +I don't have specific submission guidelines for Syslinux, but the ones +that appropriate to the Linux kernel are certainly good enough for +Syslinux. + +In particular, however, I appreciate if patches sent follow the +standard Linux submission format, as I can automatically import them +into git, retaining description and author information. Thus, this +file from the Linux kernel might be useful. + + + ----------------------------------------------------------------------- + + + + How to Get Your Change Into the Linux Kernel + or + Care And Operation Of Your Linus Torvalds + + + +For a person or company who wishes to submit a change to the Linux +kernel, the process can sometimes be daunting if you're not familiar +with "the system." This text is a collection of suggestions which +can greatly increase the chances of your change being accepted. + +Read Documentation/SubmitChecklist for a list of items to check +before submitting code. If you are submitting a driver, also read +Documentation/SubmittingDrivers. + + + +-------------------------------------------- +SECTION 1 - CREATING AND SENDING YOUR CHANGE +-------------------------------------------- + + + +1) "diff -up" +------------ + +Use "diff -up" or "diff -uprN" to create patches. + +All changes to the Linux kernel occur in the form of patches, as +generated by diff(1). When creating your patch, make sure to create it +in "unified diff" format, as supplied by the '-u' argument to diff(1). +Also, please use the '-p' argument which shows which C function each +change is in - that makes the resultant diff a lot easier to read. +Patches should be based in the root kernel source directory, +not in any lower subdirectory. + +To create a patch for a single file, it is often sufficient to do: + + SRCTREE= linux-2.6 + MYFILE= drivers/net/mydriver.c + + cd $SRCTREE + cp $MYFILE $MYFILE.orig + vi $MYFILE # make your change + cd .. + diff -up $SRCTREE/$MYFILE{.orig,} > /tmp/patch + +To create a patch for multiple files, you should unpack a "vanilla", +or unmodified kernel source tree, and generate a diff against your +own source tree. For example: + + MYSRC= /devel/linux-2.6 + + tar xvfz linux-2.6.12.tar.gz + mv linux-2.6.12 linux-2.6.12-vanilla + diff -uprN -X linux-2.6.12-vanilla/Documentation/dontdiff \ + linux-2.6.12-vanilla $MYSRC > /tmp/patch + +"dontdiff" is a list of files which are generated by the kernel during +the build process, and should be ignored in any diff(1)-generated +patch. The "dontdiff" file is included in the kernel tree in +2.6.12 and later. For earlier kernel versions, you can get it +from . + +Make sure your patch does not include any extra files which do not +belong in a patch submission. Make sure to review your patch -after- +generated it with diff(1), to ensure accuracy. + +If your changes produce a lot of deltas, you may want to look into +splitting them into individual patches which modify things in +logical stages. This will facilitate easier reviewing by other +kernel developers, very important if you want your patch accepted. +There are a number of scripts which can aid in this: + +Quilt: +http://savannah.nongnu.org/projects/quilt + +Andrew Morton's patch scripts: +http://www.zip.com.au/~akpm/linux/patches/ +Instead of these scripts, quilt is the recommended patch management +tool (see above). + + + +2) Describe your changes. + +Describe the technical detail of the change(s) your patch includes. + +Be as specific as possible. The WORST descriptions possible include +things like "update driver X", "bug fix for driver X", or "this patch +includes updates for subsystem X. Please apply." + +If your description starts to get long, that's a sign that you probably +need to split up your patch. See #3, next. + + + +3) Separate your changes. + +Separate _logical changes_ into a single patch file. + +For example, if your changes include both bug fixes and performance +enhancements for a single driver, separate those changes into two +or more patches. If your changes include an API update, and a new +driver which uses that new API, separate those into two patches. + +On the other hand, if you make a single change to numerous files, +group those changes into a single patch. Thus a single logical change +is contained within a single patch. + +If one patch depends on another patch in order for a change to be +complete, that is OK. Simply note "this patch depends on patch X" +in your patch description. + +If you cannot condense your patch set into a smaller set of patches, +then only post say 15 or so at a time and wait for review and integration. + + + +4) Style check your changes. + +Check your patch for basic style violations, details of which can be +found in Documentation/CodingStyle. Failure to do so simply wastes +the reviewers time and will get your patch rejected, probably +without even being read. + +At a minimum you should check your patches with the patch style +checker prior to submission (scripts/checkpatch.pl). You should +be able to justify all violations that remain in your patch. + + + +5) Select e-mail destination. + +Look through the MAINTAINERS file and the source code, and determine +if your change applies to a specific subsystem of the kernel, with +an assigned maintainer. If so, e-mail that person. + +If no maintainer is listed, or the maintainer does not respond, send +your patch to the primary Linux kernel developer's mailing list, +linux-kernel@vger.kernel.org. Most kernel developers monitor this +e-mail list, and can comment on your changes. + + +Do not send more than 15 patches at once to the vger mailing lists!!! + + +Linus Torvalds is the final arbiter of all changes accepted into the +Linux kernel. His e-mail address is . +He gets a lot of e-mail, so typically you should do your best to -avoid- +sending him e-mail. + +Patches which are bug fixes, are "obvious" changes, or similarly +require little discussion should be sent or CC'd to Linus. Patches +which require discussion or do not have a clear advantage should +usually be sent first to linux-kernel. Only after the patch is +discussed should the patch then be submitted to Linus. + + + +6) Select your CC (e-mail carbon copy) list. + +Unless you have a reason NOT to do so, CC linux-kernel@vger.kernel.org. + +Other kernel developers besides Linus need to be aware of your change, +so that they may comment on it and offer code review and suggestions. +linux-kernel is the primary Linux kernel developer mailing list. +Other mailing lists are available for specific subsystems, such as +USB, framebuffer devices, the VFS, the SCSI subsystem, etc. See the +MAINTAINERS file for a mailing list that relates specifically to +your change. + +Majordomo lists of VGER.KERNEL.ORG at: + + +If changes affect userland-kernel interfaces, please send +the MAN-PAGES maintainer (as listed in the MAINTAINERS file) +a man-pages patch, or at least a notification of the change, +so that some information makes its way into the manual pages. + +Even if the maintainer did not respond in step #4, make sure to ALWAYS +copy the maintainer when you change their code. + +For small patches you may want to CC the Trivial Patch Monkey +trivial@kernel.org managed by Adrian Bunk; which collects "trivial" +patches. Trivial patches must qualify for one of the following rules: + Spelling fixes in documentation + Spelling fixes which could break grep(1) + Warning fixes (cluttering with useless warnings is bad) + Compilation fixes (only if they are actually correct) + Runtime fixes (only if they actually fix things) + Removing use of deprecated functions/macros (eg. check_region) + Contact detail and documentation fixes + Non-portable code replaced by portable code (even in arch-specific, + since people copy, as long as it's trivial) + Any fix by the author/maintainer of the file (ie. patch monkey + in re-transmission mode) +URL: + + + +7) No MIME, no links, no compression, no attachments. Just plain text. + +Linus and other kernel developers need to be able to read and comment +on the changes you are submitting. It is important for a kernel +developer to be able to "quote" your changes, using standard e-mail +tools, so that they may comment on specific portions of your code. + +For this reason, all patches should be submitting e-mail "inline". +WARNING: Be wary of your editor's word-wrap corrupting your patch, +if you choose to cut-n-paste your patch. + +Do not attach the patch as a MIME attachment, compressed or not. +Many popular e-mail applications will not always transmit a MIME +attachment as plain text, making it impossible to comment on your +code. A MIME attachment also takes Linus a bit more time to process, +decreasing the likelihood of your MIME-attached change being accepted. + +Exception: If your mailer is mangling patches then someone may ask +you to re-send them using MIME. + +See Documentation/email-clients.txt for hints about configuring +your e-mail client so that it sends your patches untouched. + +8) E-mail size. + +When sending patches to Linus, always follow step #7. + +Large changes are not appropriate for mailing lists, and some +maintainers. If your patch, uncompressed, exceeds 40 kB in size, +it is preferred that you store your patch on an Internet-accessible +server, and provide instead a URL (link) pointing to your patch. + + + +9) Name your kernel version. + +It is important to note, either in the subject line or in the patch +description, the kernel version to which this patch applies. + +If the patch does not apply cleanly to the latest kernel version, +Linus will not apply it. + + + +10) Don't get discouraged. Re-submit. + +After you have submitted your change, be patient and wait. If Linus +likes your change and applies it, it will appear in the next version +of the kernel that he releases. + +However, if your change doesn't appear in the next version of the +kernel, there could be any number of reasons. It's YOUR job to +narrow down those reasons, correct what was wrong, and submit your +updated change. + +It is quite common for Linus to "drop" your patch without comment. +That's the nature of the system. If he drops your patch, it could be +due to +* Your patch did not apply cleanly to the latest kernel version. +* Your patch was not sufficiently discussed on linux-kernel. +* A style issue (see section 2). +* An e-mail formatting issue (re-read this section). +* A technical problem with your change. +* He gets tons of e-mail, and yours got lost in the shuffle. +* You are being annoying. + +When in doubt, solicit comments on linux-kernel mailing list. + + + +11) Include PATCH in the subject + +Due to high e-mail traffic to Linus, and to linux-kernel, it is common +convention to prefix your subject line with [PATCH]. This lets Linus +and other kernel developers more easily distinguish patches from other +e-mail discussions. + + + +12) Sign your work + +To improve tracking of who did what, especially with patches that can +percolate to their final resting place in the kernel through several +layers of maintainers, we've introduced a "sign-off" procedure on +patches that are being emailed around. + +The sign-off is a simple line at the end of the explanation for the +patch, which certifies that you wrote it or otherwise have the right to +pass it on as a open-source patch. The rules are pretty simple: if you +can certify the below: + + Developer's Certificate of Origin 1.1 + + By making a contribution to this project, I certify that: + + (a) The contribution was created in whole or in part by me and I + have the right to submit it under the open source license + indicated in the file; or + + (b) The contribution is based upon previous work that, to the best + of my knowledge, is covered under an appropriate open source + license and I have the right under that license to submit that + work with modifications, whether created in whole or in part + by me, under the same open source license (unless I am + permitted to submit under a different license), as indicated + in the file; or + + (c) The contribution was provided directly to me by some other + person who certified (a), (b) or (c) and I have not modified + it. + + (d) I understand and agree that this project and the contribution + are public and that a record of the contribution (including all + personal information I submit with it, including my sign-off) is + maintained indefinitely and may be redistributed consistent with + this project or the open source license(s) involved. + +then you just add a line saying + + Signed-off-by: Random J Developer + +using your real name (sorry, no pseudonyms or anonymous contributions.) + +Some people also put extra tags at the end. They'll just be ignored for +now, but you can do this to mark internal company procedures or just +point out some special detail about the sign-off. + + +13) When to use Acked-by: + +The Signed-off-by: tag indicates that the signer was involved in the +development of the patch, or that he/she was in the patch's delivery path. + +If a person was not directly involved in the preparation or handling of a +patch but wishes to signify and record their approval of it then they can +arrange to have an Acked-by: line added to the patch's changelog. + +Acked-by: is often used by the maintainer of the affected code when that +maintainer neither contributed to nor forwarded the patch. + +Acked-by: is not as formal as Signed-off-by:. It is a record that the acker +has at least reviewed the patch and has indicated acceptance. Hence patch +mergers will sometimes manually convert an acker's "yep, looks good to me" +into an Acked-by:. + +Acked-by: does not necessarily indicate acknowledgement of the entire patch. +For example, if a patch affects multiple subsystems and has an Acked-by: from +one subsystem maintainer then this usually indicates acknowledgement of just +the part which affects that maintainer's code. Judgement should be used here. + When in doubt people should refer to the original discussion in the mailing +list archives. + + +14) The canonical patch format + +The canonical patch subject line is: + + Subject: [PATCH 001/123] subsystem: summary phrase + +The canonical patch message body contains the following: + + - A "from" line specifying the patch author. + + - An empty line. + + - The body of the explanation, which will be copied to the + permanent changelog to describe this patch. + + - The "Signed-off-by:" lines, described above, which will + also go in the changelog. + + - A marker line containing simply "---". + + - Any additional comments not suitable for the changelog. + + - The actual patch (diff output). + +The Subject line format makes it very easy to sort the emails +alphabetically by subject line - pretty much any email reader will +support that - since because the sequence number is zero-padded, +the numerical and alphabetic sort is the same. + +The "subsystem" in the email's Subject should identify which +area or subsystem of the kernel is being patched. + +The "summary phrase" in the email's Subject should concisely +describe the patch which that email contains. The "summary +phrase" should not be a filename. Do not use the same "summary +phrase" for every patch in a whole patch series (where a "patch +series" is an ordered sequence of multiple, related patches). + +Bear in mind that the "summary phrase" of your email becomes +a globally-unique identifier for that patch. It propagates +all the way into the git changelog. The "summary phrase" may +later be used in developer discussions which refer to the patch. +People will want to google for the "summary phrase" to read +discussion regarding that patch. + +A couple of example Subjects: + + Subject: [patch 2/5] ext2: improve scalability of bitmap searching + Subject: [PATCHv2 001/207] x86: fix eflags tracking + +The "from" line must be the very first line in the message body, +and has the form: + + From: Original Author + +The "from" line specifies who will be credited as the author of the +patch in the permanent changelog. If the "from" line is missing, +then the "From:" line from the email header will be used to determine +the patch author in the changelog. + +The explanation body will be committed to the permanent source +changelog, so should make sense to a competent reader who has long +since forgotten the immediate details of the discussion that might +have led to this patch. + +The "---" marker line serves the essential purpose of marking for patch +handling tools where the changelog message ends. + +One good use for the additional comments after the "---" marker is for +a diffstat, to show what files have changed, and the number of inserted +and deleted lines per file. A diffstat is especially useful on bigger +patches. Other comments relevant only to the moment or the maintainer, +not suitable for the permanent changelog, should also go here. +Use diffstat options "-p 1 -w 70" so that filenames are listed from the +top of the kernel source tree and don't use too much horizontal space +(easily fit in 80 columns, maybe with some indentation). + +See more details on the proper patch format in the following +references. + + + + +----------------------------------- +SECTION 2 - HINTS, TIPS, AND TRICKS +----------------------------------- + +This section lists many of the common "rules" associated with code +submitted to the kernel. There are always exceptions... but you must +have a really good reason for doing so. You could probably call this +section Linus Computer Science 101. + + + +1) Read Documentation/CodingStyle + +Nuff said. If your code deviates too much from this, it is likely +to be rejected without further review, and without comment. + +One significant exception is when moving code from one file to +another -- in this case you should not modify the moved code at all in +the same patch which moves it. This clearly delineates the act of +moving the code and your changes. This greatly aids review of the +actual differences and allows tools to better track the history of +the code itself. + +Check your patches with the patch style checker prior to submission +(scripts/checkpatch.pl). The style checker should be viewed as +a guide not as the final word. If your code looks better with +a violation then its probably best left alone. + +The checker reports at three levels: + - ERROR: things that are very likely to be wrong + - WARNING: things requiring careful review + - CHECK: things requiring thought + +You should be able to justify all violations that remain in your +patch. + + + +2) #ifdefs are ugly + +Code cluttered with ifdefs is difficult to read and maintain. Don't do +it. Instead, put your ifdefs in a header, and conditionally define +'static inline' functions, or macros, which are used in the code. +Let the compiler optimize away the "no-op" case. + +Simple example, of poor code: + + dev = alloc_etherdev (sizeof(struct funky_private)); + if (!dev) + return -ENODEV; + #ifdef CONFIG_NET_FUNKINESS + init_funky_net(dev); + #endif + +Cleaned-up example: + +(in header) + #ifndef CONFIG_NET_FUNKINESS + static inline void init_funky_net (struct net_device *d) {} + #endif + +(in the code itself) + dev = alloc_etherdev (sizeof(struct funky_private)); + if (!dev) + return -ENODEV; + init_funky_net(dev); + + + +3) 'static inline' is better than a macro + +Static inline functions are greatly preferred over macros. +They provide type safety, have no length limitations, no formatting +limitations, and under gcc they are as cheap as macros. + +Macros should only be used for cases where a static inline is clearly +suboptimal [there a few, isolated cases of this in fast paths], +or where it is impossible to use a static inline function [such as +string-izing]. + +'static inline' is preferred over 'static __inline__', 'extern inline', +and 'extern __inline__'. + + + +4) Don't over-design. + +Don't try to anticipate nebulous future cases which may or may not +be useful: "Make it as simple as you can, and no simpler." + + + +---------------------- +SECTION 3 - REFERENCES +---------------------- + +Andrew Morton, "The perfect patch" (tpp). + + +Jeff Garzik, "Linux kernel patch submission format". + + +Greg Kroah-Hartman, "How to piss off a kernel subsystem maintainer". + + + + + +NO!!!! No more huge patch bombs to linux-kernel@vger.kernel.org people! + + +Kernel Documentation/CodingStyle: + + +Linus Torvalds's mail on the canonical patch format: + +-- diff --git a/config/release/3rdparty/syslinux/doc/extlinux.txt b/config/release/3rdparty/syslinux/doc/extlinux.txt index 6974a517ab..9b26701826 100644 --- a/config/release/3rdparty/syslinux/doc/extlinux.txt +++ b/config/release/3rdparty/syslinux/doc/extlinux.txt @@ -24,6 +24,8 @@ slight modifications. 2. The configuration file is called "extlinux.conf", and is expected to be found in the same directory as extlinux is installed in. + Since 4.00 "syslinux.cfg" is also tried if "extlinux.conf" is not + found. 3. Pathnames can be absolute or relative; if absolute (with a leading diff --git a/config/release/3rdparty/syslinux/doc/syslinux.txt b/config/release/3rdparty/syslinux/doc/syslinux.txt index 51d1332cd8..5b27a6eb90 100644 --- a/config/release/3rdparty/syslinux/doc/syslinux.txt +++ b/config/release/3rdparty/syslinux/doc/syslinux.txt @@ -106,24 +106,25 @@ which requires root privilege. ++++ CONFIGURATION FILE ++++ +All options here apply to PXELINUX, ISOLINUX and EXTLINUX as well as +SYSLINUX unless otherwise noted. See the respective .txt files. + All the configurable defaults in SYSLINUX can be changed by putting a file called "syslinux.cfg" in the root directory of the boot disk. -This is a text file in either UNIX or DOS format, containing one or -more of the following items (case is insensitive for keywords; upper -case is used here to indicate that a word should be typed verbatim): - Starting with version 3.35, the configuration file can also be in either the /boot/syslinux or /syslinux directories (searched in that order.) If that is the case, then all filenames are assumed to be relative to that same directory, unless preceded with a slash or backslash. -All options here applies to PXELINUX, ISOLINUX and EXTLINUX as well as -SYSLINUX unless otherwise noted. See the respective .txt files. +The configuration file is a text file in either UNIX or DOS format, +containing one or more of the following items, each on its own line with +optional leading whitespace. Case is insensitive for keywords; upper +case is used here to indicate that a word should be typed verbatim. -# comment - A comment line. The whitespace after the hash mark is mandatory. +#comment + A comment line. INCLUDE filename Inserts the contents of another file at this point in the diff --git a/config/release/3rdparty/syslinux/dos/syslinux.com b/config/release/3rdparty/syslinux/dos/syslinux.com index 12f2af640268c29fa458d90bd9bc03832e17e200..08234b00372d083c96a3aa3bc77a33bb934d6314 100755 GIT binary patch delta 34242 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

sS2Gv5UWx_a<_kLaLC5VcN;N` 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 delta 34312 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 S(pLp=4usnQ1G-ZJIR6Js`0-Q# delta 11658 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 J`U?lZ{XdK@ClLSu