diff options
-rw-r--r-- | Documentation/SubmittingPatches | 70 | ||||
-rw-r--r-- | arch/alpha/kernel/entry.S | 1 | ||||
-rw-r--r-- | arch/alpha/kernel/traps.c | 15 |
3 files changed, 77 insertions, 9 deletions
diff --git a/Documentation/SubmittingPatches b/Documentation/SubmittingPatches index 7f43b040311e..1d96efec5e8f 100644 --- a/Documentation/SubmittingPatches +++ b/Documentation/SubmittingPatches | |||
@@ -301,8 +301,68 @@ now, but you can do this to mark internal company procedures or just | |||
301 | point out some special detail about the sign-off. | 301 | point out some special detail about the sign-off. |
302 | 302 | ||
303 | 303 | ||
304 | 12) The canonical patch format | ||
304 | 305 | ||
305 | 12) More references for submitting patches | 306 | The canonical patch subject line is: |
307 | |||
308 | Subject: [PATCH 001/123] [<area>:] <explanation> | ||
309 | |||
310 | The canonical patch message body contains the following: | ||
311 | |||
312 | - A "from" line specifying the patch author. | ||
313 | |||
314 | - An empty line. | ||
315 | |||
316 | - The body of the explanation, which will be copied to the | ||
317 | permanent changelog to describe this patch. | ||
318 | |||
319 | - The "Signed-off-by:" lines, described above, which will | ||
320 | also go in the changelog. | ||
321 | |||
322 | - A marker line containing simply "---". | ||
323 | |||
324 | - Any additional comments not suitable for the changelog. | ||
325 | |||
326 | - The actual patch (diff output). | ||
327 | |||
328 | The Subject line format makes it very easy to sort the emails | ||
329 | alphabetically by subject line - pretty much any email reader will | ||
330 | support that - since because the sequence number is zero-padded, | ||
331 | the numerical and alphabetic sort is the same. | ||
332 | |||
333 | See further details on how to phrase the "<explanation>" in the | ||
334 | "Subject:" line in Andrew Morton's "The perfect patch", referenced | ||
335 | below. | ||
336 | |||
337 | The "from" line must be the very first line in the message body, | ||
338 | and has the form: | ||
339 | |||
340 | From: Original Author <author@example.com> | ||
341 | |||
342 | The "from" line specifies who will be credited as the author of the | ||
343 | patch in the permanent changelog. If the "from" line is missing, | ||
344 | then the "From:" line from the email header will be used to determine | ||
345 | the patch author in the changelog. | ||
346 | |||
347 | The explanation body will be committed to the permanent source | ||
348 | changelog, so should make sense to a competent reader who has long | ||
349 | since forgotten the immediate details of the discussion that might | ||
350 | have led to this patch. | ||
351 | |||
352 | The "---" marker line serves the essential purpose of marking for patch | ||
353 | handling tools where the changelog message ends. | ||
354 | |||
355 | One good use for the additional comments after the "---" marker is for | ||
356 | a diffstat, to show what files have changed, and the number of inserted | ||
357 | and deleted lines per file. A diffstat is especially useful on bigger | ||
358 | patches. Other comments relevant only to the moment or the maintainer, | ||
359 | not suitable for the permanent changelog, should also go here. | ||
360 | |||
361 | See more details on the proper patch format in the following | ||
362 | references. | ||
363 | |||
364 | |||
365 | 13) More references for submitting patches | ||
306 | 366 | ||
307 | Andrew Morton, "The perfect patch" (tpp). | 367 | Andrew Morton, "The perfect patch" (tpp). |
308 | <http://www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt> | 368 | <http://www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt> |
@@ -310,6 +370,14 @@ Andrew Morton, "The perfect patch" (tpp). | |||
310 | Jeff Garzik, "Linux kernel patch submission format." | 370 | Jeff Garzik, "Linux kernel patch submission format." |
311 | <http://linux.yyz.us/patch-format.html> | 371 | <http://linux.yyz.us/patch-format.html> |
312 | 372 | ||
373 | Greg KH, "How to piss off a kernel subsystem maintainer" | ||
374 | <http://www.kroah.com/log/2005/03/31/> | ||
375 | |||
376 | Kernel Documentation/CodingStyle | ||
377 | <http://sosdg.org/~coywolf/lxr/source/Documentation/CodingStyle> | ||
378 | |||
379 | Linus Torvald's mail on the canonical patch format: | ||
380 | <http://lkml.org/lkml/2005/4/7/183> | ||
313 | 381 | ||
314 | 382 | ||
315 | ----------------------------------- | 383 | ----------------------------------- |
diff --git a/arch/alpha/kernel/entry.S b/arch/alpha/kernel/entry.S index 76cc0cb5fc2e..e38671c922bc 100644 --- a/arch/alpha/kernel/entry.S +++ b/arch/alpha/kernel/entry.S | |||
@@ -196,6 +196,7 @@ entUna: | |||
196 | stq $26, 208($sp) | 196 | stq $26, 208($sp) |
197 | stq $27, 216($sp) | 197 | stq $27, 216($sp) |
198 | stq $28, 224($sp) | 198 | stq $28, 224($sp) |
199 | mov $sp, $19 | ||
199 | stq $gp, 232($sp) | 200 | stq $gp, 232($sp) |
200 | lda $8, 0x3fff | 201 | lda $8, 0x3fff |
201 | stq $31, 248($sp) | 202 | stq $31, 248($sp) |
diff --git a/arch/alpha/kernel/traps.c b/arch/alpha/kernel/traps.c index 6f509a644bdd..f9d12319e0fb 100644 --- a/arch/alpha/kernel/traps.c +++ b/arch/alpha/kernel/traps.c | |||
@@ -446,16 +446,15 @@ struct unaligned_stat { | |||
446 | 446 | ||
447 | 447 | ||
448 | /* Macro for exception fixup code to access integer registers. */ | 448 | /* Macro for exception fixup code to access integer registers. */ |
449 | #define una_reg(r) (regs.regs[(r) >= 16 && (r) <= 18 ? (r)+19 : (r)]) | 449 | #define una_reg(r) (regs->regs[(r) >= 16 && (r) <= 18 ? (r)+19 : (r)]) |
450 | 450 | ||
451 | 451 | ||
452 | asmlinkage void | 452 | asmlinkage void |
453 | do_entUna(void * va, unsigned long opcode, unsigned long reg, | 453 | do_entUna(void * va, unsigned long opcode, unsigned long reg, |
454 | unsigned long a3, unsigned long a4, unsigned long a5, | 454 | struct allregs *regs) |
455 | struct allregs regs) | ||
456 | { | 455 | { |
457 | long error, tmp1, tmp2, tmp3, tmp4; | 456 | long error, tmp1, tmp2, tmp3, tmp4; |
458 | unsigned long pc = regs.pc - 4; | 457 | unsigned long pc = regs->pc - 4; |
459 | const struct exception_table_entry *fixup; | 458 | const struct exception_table_entry *fixup; |
460 | 459 | ||
461 | unaligned[0].count++; | 460 | unaligned[0].count++; |
@@ -636,7 +635,7 @@ got_exception: | |||
636 | printk("Forwarding unaligned exception at %lx (%lx)\n", | 635 | printk("Forwarding unaligned exception at %lx (%lx)\n", |
637 | pc, newpc); | 636 | pc, newpc); |
638 | 637 | ||
639 | (®s)->pc = newpc; | 638 | regs->pc = newpc; |
640 | return; | 639 | return; |
641 | } | 640 | } |
642 | 641 | ||
@@ -650,7 +649,7 @@ got_exception: | |||
650 | current->comm, current->pid); | 649 | current->comm, current->pid); |
651 | 650 | ||
652 | printk("pc = [<%016lx>] ra = [<%016lx>] ps = %04lx\n", | 651 | printk("pc = [<%016lx>] ra = [<%016lx>] ps = %04lx\n", |
653 | pc, una_reg(26), regs.ps); | 652 | pc, una_reg(26), regs->ps); |
654 | printk("r0 = %016lx r1 = %016lx r2 = %016lx\n", | 653 | printk("r0 = %016lx r1 = %016lx r2 = %016lx\n", |
655 | una_reg(0), una_reg(1), una_reg(2)); | 654 | una_reg(0), una_reg(1), una_reg(2)); |
656 | printk("r3 = %016lx r4 = %016lx r5 = %016lx\n", | 655 | printk("r3 = %016lx r4 = %016lx r5 = %016lx\n", |
@@ -670,10 +669,10 @@ got_exception: | |||
670 | una_reg(22), una_reg(23), una_reg(24)); | 669 | una_reg(22), una_reg(23), una_reg(24)); |
671 | printk("r25= %016lx r27= %016lx r28= %016lx\n", | 670 | printk("r25= %016lx r27= %016lx r28= %016lx\n", |
672 | una_reg(25), una_reg(27), una_reg(28)); | 671 | una_reg(25), una_reg(27), una_reg(28)); |
673 | printk("gp = %016lx sp = %p\n", regs.gp, ®s+1); | 672 | printk("gp = %016lx sp = %p\n", regs->gp, regs+1); |
674 | 673 | ||
675 | dik_show_code((unsigned int *)pc); | 674 | dik_show_code((unsigned int *)pc); |
676 | dik_show_trace((unsigned long *)(®s+1)); | 675 | dik_show_trace((unsigned long *)(regs+1)); |
677 | 676 | ||
678 | if (test_and_set_thread_flag (TIF_DIE_IF_KERNEL)) { | 677 | if (test_and_set_thread_flag (TIF_DIE_IF_KERNEL)) { |
679 | printk("die_if_kernel recursion detected.\n"); | 678 | printk("die_if_kernel recursion detected.\n"); |