diff options
246 files changed, 396 insertions, 3454 deletions
diff --git a/Documentation/DocBook/mtdnand.tmpl b/Documentation/DocBook/mtdnand.tmpl index 5e7d84b48505..133cd6c3f3c1 100644 --- a/Documentation/DocBook/mtdnand.tmpl +++ b/Documentation/DocBook/mtdnand.tmpl | |||
| @@ -488,7 +488,7 @@ static void board_select_chip (struct mtd_info *mtd, int chip) | |||
| 488 | The ECC bytes must be placed immidiately after the data | 488 | The ECC bytes must be placed immidiately after the data |
| 489 | bytes in order to make the syndrome generator work. This | 489 | bytes in order to make the syndrome generator work. This |
| 490 | is contrary to the usual layout used by software ECC. The | 490 | is contrary to the usual layout used by software ECC. The |
| 491 | seperation of data and out of band area is not longer | 491 | separation of data and out of band area is not longer |
| 492 | possible. The nand driver code handles this layout and | 492 | possible. The nand driver code handles this layout and |
| 493 | the remaining free bytes in the oob area are managed by | 493 | the remaining free bytes in the oob area are managed by |
| 494 | the autoplacement code. Provide a matching oob-layout | 494 | the autoplacement code. Provide a matching oob-layout |
| @@ -560,7 +560,7 @@ static void board_select_chip (struct mtd_info *mtd, int chip) | |||
| 560 | bad blocks. They have factory marked good blocks. The marker pattern | 560 | bad blocks. They have factory marked good blocks. The marker pattern |
| 561 | is erased when the block is erased to be reused. So in case of | 561 | is erased when the block is erased to be reused. So in case of |
| 562 | powerloss before writing the pattern back to the chip this block | 562 | powerloss before writing the pattern back to the chip this block |
| 563 | would be lost and added to the bad blocks. Therefor we scan the | 563 | would be lost and added to the bad blocks. Therefore we scan the |
| 564 | chip(s) when we detect them the first time for good blocks and | 564 | chip(s) when we detect them the first time for good blocks and |
| 565 | store this information in a bad block table before erasing any | 565 | store this information in a bad block table before erasing any |
| 566 | of the blocks. | 566 | of the blocks. |
| @@ -1094,7 +1094,7 @@ in this page</entry> | |||
| 1094 | manufacturers specifications. This applies similar to the spare area. | 1094 | manufacturers specifications. This applies similar to the spare area. |
| 1095 | </para> | 1095 | </para> |
| 1096 | <para> | 1096 | <para> |
| 1097 | Therefor NAND aware filesystems must either write in page size chunks | 1097 | Therefore NAND aware filesystems must either write in page size chunks |
| 1098 | or hold a writebuffer to collect smaller writes until they sum up to | 1098 | or hold a writebuffer to collect smaller writes until they sum up to |
| 1099 | pagesize. Available NAND aware filesystems: JFFS2, YAFFS. | 1099 | pagesize. Available NAND aware filesystems: JFFS2, YAFFS. |
| 1100 | </para> | 1100 | </para> |
diff --git a/Documentation/DocBook/v4l/common.xml b/Documentation/DocBook/v4l/common.xml index c65f0ac9b6ee..cea23e1c4fc6 100644 --- a/Documentation/DocBook/v4l/common.xml +++ b/Documentation/DocBook/v4l/common.xml | |||
| @@ -1170,7 +1170,7 @@ frames per second. If less than this number of frames is to be | |||
| 1170 | captured or output, applications can request frame skipping or | 1170 | captured or output, applications can request frame skipping or |
| 1171 | duplicating on the driver side. This is especially useful when using | 1171 | duplicating on the driver side. This is especially useful when using |
| 1172 | the &func-read; or &func-write;, which are not augmented by timestamps | 1172 | the &func-read; or &func-write;, which are not augmented by timestamps |
| 1173 | or sequence counters, and to avoid unneccessary data copying.</para> | 1173 | or sequence counters, and to avoid unnecessary data copying.</para> |
| 1174 | 1174 | ||
| 1175 | <para>Finally these ioctls can be used to determine the number of | 1175 | <para>Finally these ioctls can be used to determine the number of |
| 1176 | buffers used internally by a driver in read/write mode. For | 1176 | buffers used internally by a driver in read/write mode. For |
diff --git a/Documentation/DocBook/v4l/vidioc-g-parm.xml b/Documentation/DocBook/v4l/vidioc-g-parm.xml index 78332d365ce9..392aa9e5571e 100644 --- a/Documentation/DocBook/v4l/vidioc-g-parm.xml +++ b/Documentation/DocBook/v4l/vidioc-g-parm.xml | |||
| @@ -55,7 +55,7 @@ captured or output, applications can request frame skipping or | |||
| 55 | duplicating on the driver side. This is especially useful when using | 55 | duplicating on the driver side. This is especially useful when using |
| 56 | the <function>read()</function> or <function>write()</function>, which | 56 | the <function>read()</function> or <function>write()</function>, which |
| 57 | are not augmented by timestamps or sequence counters, and to avoid | 57 | are not augmented by timestamps or sequence counters, and to avoid |
| 58 | unneccessary data copying.</para> | 58 | unnecessary data copying.</para> |
| 59 | 59 | ||
| 60 | <para>Further these ioctls can be used to determine the number of | 60 | <para>Further these ioctls can be used to determine the number of |
| 61 | buffers used internally by a driver in read/write mode. For | 61 | buffers used internally by a driver in read/write mode. For |
diff --git a/Documentation/arm/Samsung-S3C24XX/CPUfreq.txt b/Documentation/arm/Samsung-S3C24XX/CPUfreq.txt index 76b3a11e90be..fa968aa99d67 100644 --- a/Documentation/arm/Samsung-S3C24XX/CPUfreq.txt +++ b/Documentation/arm/Samsung-S3C24XX/CPUfreq.txt | |||
| @@ -14,8 +14,8 @@ Introduction | |||
| 14 | how the clocks are arranged. The first implementation used as single | 14 | how the clocks are arranged. The first implementation used as single |
| 15 | PLL to feed the ARM, memory and peripherals via a series of dividers | 15 | PLL to feed the ARM, memory and peripherals via a series of dividers |
| 16 | and muxes and this is the implementation that is documented here. A | 16 | and muxes and this is the implementation that is documented here. A |
| 17 | newer version where there is a seperate PLL and clock divider for the | 17 | newer version where there is a separate PLL and clock divider for the |
| 18 | ARM core is available as a seperate driver. | 18 | ARM core is available as a separate driver. |
| 19 | 19 | ||
| 20 | 20 | ||
| 21 | Layout | 21 | Layout |
diff --git a/Documentation/cgroups/cpusets.txt b/Documentation/cgroups/cpusets.txt index 1d7e9784439a..4160df82b3f5 100644 --- a/Documentation/cgroups/cpusets.txt +++ b/Documentation/cgroups/cpusets.txt | |||
| @@ -168,20 +168,20 @@ Each cpuset is represented by a directory in the cgroup file system | |||
| 168 | containing (on top of the standard cgroup files) the following | 168 | containing (on top of the standard cgroup files) the following |
| 169 | files describing that cpuset: | 169 | files describing that cpuset: |
| 170 | 170 | ||
| 171 | - cpus: list of CPUs in that cpuset | 171 | - cpuset.cpus: list of CPUs in that cpuset |
| 172 | - mems: list of Memory Nodes in that cpuset | 172 | - cpuset.mems: list of Memory Nodes in that cpuset |
| 173 | - memory_migrate flag: if set, move pages to cpusets nodes | 173 | - cpuset.memory_migrate flag: if set, move pages to cpusets nodes |
| 174 | - cpu_exclusive flag: is cpu placement exclusive? | 174 | - cpuset.cpu_exclusive flag: is cpu placement exclusive? |
| 175 | - mem_exclusive flag: is memory placement exclusive? | 175 | - cpuset.mem_exclusive flag: is memory placement exclusive? |
| 176 | - mem_hardwall flag: is memory allocation hardwalled | 176 | - cpuset.mem_hardwall flag: is memory allocation hardwalled |
| 177 | - memory_pressure: measure of how much paging pressure in cpuset | 177 | - cpuset.memory_pressure: measure of how much paging pressure in cpuset |
| 178 | - memory_spread_page flag: if set, spread page cache evenly on allowed nodes | 178 | - cpuset.memory_spread_page flag: if set, spread page cache evenly on allowed nodes |
| 179 | - memory_spread_slab flag: if set, spread slab cache evenly on allowed nodes | 179 | - cpuset.memory_spread_slab flag: if set, spread slab cache evenly on allowed nodes |
| 180 | - sched_load_balance flag: if set, load balance within CPUs on that cpuset | 180 | - cpuset.sched_load_balance flag: if set, load balance within CPUs on that cpuset |
| 181 | - sched_relax_domain_level: the searching range when migrating tasks | 181 | - cpuset.sched_relax_domain_level: the searching range when migrating tasks |
| 182 | 182 | ||
| 183 | In addition, the root cpuset only has the following file: | 183 | In addition, the root cpuset only has the following file: |
| 184 | - memory_pressure_enabled flag: compute memory_pressure? | 184 | - cpuset.memory_pressure_enabled flag: compute memory_pressure? |
| 185 | 185 | ||
| 186 | New cpusets are created using the mkdir system call or shell | 186 | New cpusets are created using the mkdir system call or shell |
| 187 | command. The properties of a cpuset, such as its flags, allowed | 187 | command. The properties of a cpuset, such as its flags, allowed |
| @@ -229,7 +229,7 @@ If a cpuset is cpu or mem exclusive, no other cpuset, other than | |||
| 229 | a direct ancestor or descendant, may share any of the same CPUs or | 229 | a direct ancestor or descendant, may share any of the same CPUs or |
| 230 | Memory Nodes. | 230 | Memory Nodes. |
| 231 | 231 | ||
| 232 | A cpuset that is mem_exclusive *or* mem_hardwall is "hardwalled", | 232 | A cpuset that is cpuset.mem_exclusive *or* cpuset.mem_hardwall is "hardwalled", |
| 233 | i.e. it restricts kernel allocations for page, buffer and other data | 233 | i.e. it restricts kernel allocations for page, buffer and other data |
| 234 | commonly shared by the kernel across multiple users. All cpusets, | 234 | commonly shared by the kernel across multiple users. All cpusets, |
| 235 | whether hardwalled or not, restrict allocations of memory for user | 235 | whether hardwalled or not, restrict allocations of memory for user |
| @@ -304,15 +304,15 @@ times 1000. | |||
| 304 | --------------------------- | 304 | --------------------------- |
| 305 | There are two boolean flag files per cpuset that control where the | 305 | There are two boolean flag files per cpuset that control where the |
| 306 | kernel allocates pages for the file system buffers and related in | 306 | kernel allocates pages for the file system buffers and related in |
| 307 | kernel data structures. They are called 'memory_spread_page' and | 307 | kernel data structures. They are called 'cpuset.memory_spread_page' and |
| 308 | 'memory_spread_slab'. | 308 | 'cpuset.memory_spread_slab'. |
| 309 | 309 | ||
| 310 | If the per-cpuset boolean flag file 'memory_spread_page' is set, then | 310 | If the per-cpuset boolean flag file 'cpuset.memory_spread_page' is set, then |
| 311 | the kernel will spread the file system buffers (page cache) evenly | 311 | the kernel will spread the file system buffers (page cache) evenly |
| 312 | over all the nodes that the faulting task is allowed to use, instead | 312 | over all the nodes that the faulting task is allowed to use, instead |
| 313 | of preferring to put those pages on the node where the task is running. | 313 | of preferring to put those pages on the node where the task is running. |
| 314 | 314 | ||
| 315 | If the per-cpuset boolean flag file 'memory_spread_slab' is set, | 315 | If the per-cpuset boolean flag file 'cpuset.memory_spread_slab' is set, |
| 316 | then the kernel will spread some file system related slab caches, | 316 | then the kernel will spread some file system related slab caches, |
| 317 | such as for inodes and dentries evenly over all the nodes that the | 317 | such as for inodes and dentries evenly over all the nodes that the |
| 318 | faulting task is allowed to use, instead of preferring to put those | 318 | faulting task is allowed to use, instead of preferring to put those |
| @@ -337,21 +337,21 @@ their containing tasks memory spread settings. If memory spreading | |||
| 337 | is turned off, then the currently specified NUMA mempolicy once again | 337 | is turned off, then the currently specified NUMA mempolicy once again |
| 338 | applies to memory page allocations. | 338 | applies to memory page allocations. |
| 339 | 339 | ||
| 340 | Both 'memory_spread_page' and 'memory_spread_slab' are boolean flag | 340 | Both 'cpuset.memory_spread_page' and 'cpuset.memory_spread_slab' are boolean flag |
| 341 | files. By default they contain "0", meaning that the feature is off | 341 | files. By default they contain "0", meaning that the feature is off |
| 342 | for that cpuset. If a "1" is written to that file, then that turns | 342 | for that cpuset. If a "1" is written to that file, then that turns |
| 343 | the named feature on. | 343 | the named feature on. |
| 344 | 344 | ||
| 345 | The implementation is simple. | 345 | The implementation is simple. |
| 346 | 346 | ||
| 347 | Setting the flag 'memory_spread_page' turns on a per-process flag | 347 | Setting the flag 'cpuset.memory_spread_page' turns on a per-process flag |
| 348 | PF_SPREAD_PAGE for each task that is in that cpuset or subsequently | 348 | PF_SPREAD_PAGE for each task that is in that cpuset or subsequently |
| 349 | joins that cpuset. The page allocation calls for the page cache | 349 | joins that cpuset. The page allocation calls for the page cache |
| 350 | is modified to perform an inline check for this PF_SPREAD_PAGE task | 350 | is modified to perform an inline check for this PF_SPREAD_PAGE task |
| 351 | flag, and if set, a call to a new routine cpuset_mem_spread_node() | 351 | flag, and if set, a call to a new routine cpuset_mem_spread_node() |
| 352 | returns the node to prefer for the allocation. | 352 | returns the node to prefer for the allocation. |
| 353 | 353 | ||
| 354 | Similarly, setting 'memory_spread_slab' turns on the flag | 354 | Similarly, setting 'cpuset.memory_spread_slab' turns on the flag |
| 355 | PF_SPREAD_SLAB, and appropriately marked slab caches will allocate | 355 | PF_SPREAD_SLAB, and appropriately marked slab caches will allocate |
| 356 | pages from the node returned by cpuset_mem_spread_node(). | 356 | pages from the node returned by cpuset_mem_spread_node(). |
| 357 | 357 | ||
| @@ -404,24 +404,24 @@ the following two situations: | |||
| 404 | system overhead on those CPUs, including avoiding task load | 404 | system overhead on those CPUs, including avoiding task load |
| 405 | balancing if that is not needed. | 405 | balancing if that is not needed. |
| 406 | 406 | ||
| 407 | When the per-cpuset flag "sched_load_balance" is enabled (the default | 407 | When the per-cpuset flag "cpuset.sched_load_balance" is enabled (the default |
| 408 | setting), it requests that all the CPUs in that cpusets allowed 'cpus' | 408 | setting), it requests that all the CPUs in that cpusets allowed 'cpuset.cpus' |
| 409 | be contained in a single sched domain, ensuring that load balancing | 409 | be contained in a single sched domain, ensuring that load balancing |
| 410 | can move a task (not otherwised pinned, as by sched_setaffinity) | 410 | can move a task (not otherwised pinned, as by sched_setaffinity) |
| 411 | from any CPU in that cpuset to any other. | 411 | from any CPU in that cpuset to any other. |
| 412 | 412 | ||
| 413 | When the per-cpuset flag "sched_load_balance" is disabled, then the | 413 | When the per-cpuset flag "cpuset.sched_load_balance" is disabled, then the |
| 414 | scheduler will avoid load balancing across the CPUs in that cpuset, | 414 | scheduler will avoid load balancing across the CPUs in that cpuset, |
| 415 | --except-- in so far as is necessary because some overlapping cpuset | 415 | --except-- in so far as is necessary because some overlapping cpuset |
| 416 | has "sched_load_balance" enabled. | 416 | has "sched_load_balance" enabled. |
| 417 | 417 | ||
| 418 | So, for example, if the top cpuset has the flag "sched_load_balance" | 418 | So, for example, if the top cpuset has the flag "cpuset.sched_load_balance" |
| 419 | enabled, then the scheduler will have one sched domain covering all | 419 | enabled, then the scheduler will have one sched domain covering all |
| 420 | CPUs, and the setting of the "sched_load_balance" flag in any other | 420 | CPUs, and the setting of the "cpuset.sched_load_balance" flag in any other |
| 421 | cpusets won't matter, as we're already fully load balancing. | 421 | cpusets won't matter, as we're already fully load balancing. |
| 422 | 422 | ||
| 423 | Therefore in the above two situations, the top cpuset flag | 423 | Therefore in the above two situations, the top cpuset flag |
| 424 | "sched_load_balance" should be disabled, and only some of the smaller, | 424 | "cpuset.sched_load_balance" should be disabled, and only some of the smaller, |
| 425 | child cpusets have this flag enabled. | 425 | child cpusets have this flag enabled. |
| 426 | 426 | ||
| 427 | When doing this, you don't usually want to leave any unpinned tasks in | 427 | When doing this, you don't usually want to leave any unpinned tasks in |
| @@ -433,7 +433,7 @@ scheduler might not consider the possibility of load balancing that | |||
| 433 | task to that underused CPU. | 433 | task to that underused CPU. |
| 434 | 434 | ||
| 435 | Of course, tasks pinned to a particular CPU can be left in a cpuset | 435 | Of course, tasks pinned to a particular CPU can be left in a cpuset |
| 436 | that disables "sched_load_balance" as those tasks aren't going anywhere | 436 | that disables "cpuset.sched_load_balance" as those tasks aren't going anywhere |
| 437 | else anyway. | 437 | else anyway. |
| 438 | 438 | ||
| 439 | There is an impedance mismatch here, between cpusets and sched domains. | 439 | There is an impedance mismatch here, between cpusets and sched domains. |
| @@ -443,19 +443,19 @@ overlap and each CPU is in at most one sched domain. | |||
| 443 | It is necessary for sched domains to be flat because load balancing | 443 | It is necessary for sched domains to be flat because load balancing |
| 444 | across partially overlapping sets of CPUs would risk unstable dynamics | 444 | across partially overlapping sets of CPUs would risk unstable dynamics |
| 445 | that would be beyond our understanding. So if each of two partially | 445 | that would be beyond our understanding. So if each of two partially |
| 446 | overlapping cpusets enables the flag 'sched_load_balance', then we | 446 | overlapping cpusets enables the flag 'cpuset.sched_load_balance', then we |
| 447 | form a single sched domain that is a superset of both. We won't move | 447 | form a single sched domain that is a superset of both. We won't move |
| 448 | a task to a CPU outside it cpuset, but the scheduler load balancing | 448 | a task to a CPU outside it cpuset, but the scheduler load balancing |
| 449 | code might waste some compute cycles considering that possibility. | 449 | code might waste some compute cycles considering that possibility. |
| 450 | 450 | ||
| 451 | This mismatch is why there is not a simple one-to-one relation | 451 | This mismatch is why there is not a simple one-to-one relation |
| 452 | between which cpusets have the flag "sched_load_balance" enabled, | 452 | between which cpusets have the flag "cpuset.sched_load_balance" enabled, |
| 453 | and the sched domain configuration. If a cpuset enables the flag, it | 453 | and the sched domain configuration. If a cpuset enables the flag, it |
| 454 | will get balancing across all its CPUs, but if it disables the flag, | 454 | will get balancing across all its CPUs, but if it disables the flag, |
| 455 | it will only be assured of no load balancing if no other overlapping | 455 | it will only be assured of no load balancing if no other overlapping |
| 456 | cpuset enables the flag. | 456 | cpuset enables the flag. |
| 457 | 457 | ||
| 458 | If two cpusets have partially overlapping 'cpus' allowed, and only | 458 | If two cpusets have partially overlapping 'cpuset.cpus' allowed, and only |
| 459 | one of them has this flag enabled, then the other may find its | 459 | one of them has this flag enabled, then the other may find its |
| 460 | tasks only partially load balanced, just on the overlapping CPUs. | 460 | tasks only partially load balanced, just on the overlapping CPUs. |
| 461 | This is just the general case of the top_cpuset example given a few | 461 | This is just the general case of the top_cpuset example given a few |
| @@ -468,23 +468,23 @@ load balancing to the other CPUs. | |||
| 468 | 1.7.1 sched_load_balance implementation details. | 468 | 1.7.1 sched_load_balance implementation details. |
| 469 | ------------------------------------------------ | 469 | ------------------------------------------------ |
| 470 | 470 | ||
| 471 | The per-cpuset flag 'sched_load_balance' defaults to enabled (contrary | 471 | The per-cpuset flag 'cpuset.sched_load_balance' defaults to enabled (contrary |
| 472 | to most cpuset flags.) When enabled for a cpuset, the kernel will | 472 | to most cpuset flags.) When enabled for a cpuset, the kernel will |
| 473 | ensure that it can load balance across all the CPUs in that cpuset | 473 | ensure that it can load balance across all the CPUs in that cpuset |
| 474 | (makes sure that all the CPUs in the cpus_allowed of that cpuset are | 474 | (makes sure that all the CPUs in the cpus_allowed of that cpuset are |
| 475 | in the same sched domain.) | 475 | in the same sched domain.) |
| 476 | 476 | ||
| 477 | If two overlapping cpusets both have 'sched_load_balance' enabled, | 477 | If two overlapping cpusets both have 'cpuset.sched_load_balance' enabled, |
| 478 | then they will be (must be) both in the same sched domain. | 478 | then they will be (must be) both in the same sched domain. |
| 479 | 479 | ||
| 480 | If, as is the default, the top cpuset has 'sched_load_balance' enabled, | 480 | If, as is the default, the top cpuset has 'cpuset.sched_load_balance' enabled, |
| 481 | then by the above that means there is a single sched domain covering | 481 | then by the above that means there is a single sched domain covering |
| 482 | the whole system, regardless of any other cpuset settings. | 482 | the whole system, regardless of any other cpuset settings. |
| 483 | 483 | ||
| 484 | The kernel commits to user space that it will avoid load balancing | 484 | The kernel commits to user space that it will avoid load balancing |
| 485 | where it can. It will pick as fine a granularity partition of sched | 485 | where it can. It will pick as fine a granularity partition of sched |
| 486 | domains as it can while still providing load balancing for any set | 486 | domains as it can while still providing load balancing for any set |
| 487 | of CPUs allowed to a cpuset having 'sched_load_balance' enabled. | 487 | of CPUs allowed to a cpuset having 'cpuset.sched_load_balance' enabled. |
| 488 | 488 | ||
| 489 | The internal kernel cpuset to scheduler interface passes from the | 489 | The internal kernel cpuset to scheduler interface passes from the |
| 490 | cpuset code to the scheduler code a partition of the load balanced | 490 | cpuset code to the scheduler code a partition of the load balanced |
| @@ -495,9 +495,9 @@ all the CPUs that must be load balanced. | |||
| 495 | The cpuset code builds a new such partition and passes it to the | 495 | The cpuset code builds a new such partition and passes it to the |
| 496 | scheduler sched domain setup code, to have the sched domains rebuilt | 496 | scheduler sched domain setup code, to have the sched domains rebuilt |
| 497 | as necessary, whenever: | 497 | as necessary, whenever: |
| 498 | - the 'sched_load_balance' flag of a cpuset with non-empty CPUs changes, | 498 | - the 'cpuset.sched_load_balance' flag of a cpuset with non-empty CPUs changes, |
| 499 | - or CPUs come or go from a cpuset with this flag enabled, | 499 | - or CPUs come or go from a cpuset with this flag enabled, |
| 500 | - or 'sched_relax_domain_level' value of a cpuset with non-empty CPUs | 500 | - or 'cpuset.sched_relax_domain_level' value of a cpuset with non-empty CPUs |
| 501 | and with this flag enabled changes, | 501 | and with this flag enabled changes, |
| 502 | - or a cpuset with non-empty CPUs and with this flag enabled is removed, | 502 | - or a cpuset with non-empty CPUs and with this flag enabled is removed, |
| 503 | - or a cpu is offlined/onlined. | 503 | - or a cpu is offlined/onlined. |
| @@ -542,7 +542,7 @@ As the result, task B on CPU X need to wait task A or wait load balance | |||
| 542 | on the next tick. For some applications in special situation, waiting | 542 | on the next tick. For some applications in special situation, waiting |
| 543 | 1 tick may be too long. | 543 | 1 tick may be too long. |
| 544 | 544 | ||
| 545 | The 'sched_relax_domain_level' file allows you to request changing | 545 | The 'cpuset.sched_relax_domain_level' file allows you to request changing |
| 546 | this searching range as you like. This file takes int value which | 546 | this searching range as you like. This file takes int value which |
| 547 | indicates size of searching range in levels ideally as follows, | 547 | indicates size of searching range in levels ideally as follows, |
| 548 | otherwise initial value -1 that indicates the cpuset has no request. | 548 | otherwise initial value -1 that indicates the cpuset has no request. |
| @@ -559,8 +559,8 @@ The system default is architecture dependent. The system default | |||
| 559 | can be changed using the relax_domain_level= boot parameter. | 559 | can be changed using the relax_domain_level= boot parameter. |
| 560 | 560 | ||
| 561 | This file is per-cpuset and affect the sched domain where the cpuset | 561 | This file is per-cpuset and affect the sched domain where the cpuset |
| 562 | belongs to. Therefore if the flag 'sched_load_balance' of a cpuset | 562 | belongs to. Therefore if the flag 'cpuset.sched_load_balance' of a cpuset |
| 563 | is disabled, then 'sched_relax_domain_level' have no effect since | 563 | is disabled, then 'cpuset.sched_relax_domain_level' have no effect since |
| 564 | there is no sched domain belonging the cpuset. | 564 | there is no sched domain belonging the cpuset. |
| 565 | 565 | ||
| 566 | If multiple cpusets are overlapping and hence they form a single sched | 566 | If multiple cpusets are overlapping and hence they form a single sched |
| @@ -607,9 +607,9 @@ from one cpuset to another, then the kernel will adjust the tasks | |||
| 607 | memory placement, as above, the next time that the kernel attempts | 607 | memory placement, as above, the next time that the kernel attempts |
| 608 | to allocate a page of memory for that task. | 608 | to allocate a page of memory for that task. |
| 609 | 609 | ||
| 610 | If a cpuset has its 'cpus' modified, then each task in that cpuset | 610 | If a cpuset has its 'cpuset.cpus' modified, then each task in that cpuset |
| 611 | will have its allowed CPU placement changed immediately. Similarly, | 611 | will have its allowed CPU placement changed immediately. Similarly, |
| 612 | if a tasks pid is written to another cpusets 'tasks' file, then its | 612 | if a tasks pid is written to another cpusets 'cpuset.tasks' file, then its |
| 613 | allowed CPU placement is changed immediately. If such a task had been | 613 | allowed CPU placement is changed immediately. If such a task had been |
| 614 | bound to some subset of its cpuset using the sched_setaffinity() call, | 614 | bound to some subset of its cpuset using the sched_setaffinity() call, |
| 615 | the task will be allowed to run on any CPU allowed in its new cpuset, | 615 | the task will be allowed to run on any CPU allowed in its new cpuset, |
| @@ -622,8 +622,8 @@ and the processor placement is updated immediately. | |||
| 622 | Normally, once a page is allocated (given a physical page | 622 | Normally, once a page is allocated (given a physical page |
| 623 | of main memory) then that page stays on whatever node it | 623 | of main memory) then that page stays on whatever node it |
| 624 | was allocated, so long as it remains allocated, even if the | 624 | was allocated, so long as it remains allocated, even if the |
| 625 | cpusets memory placement policy 'mems' subsequently changes. | 625 | cpusets memory placement policy 'cpuset.mems' subsequently changes. |
| 626 | If the cpuset flag file 'memory_migrate' is set true, then when | 626 | If the cpuset flag file 'cpuset.memory_migrate' is set true, then when |
| 627 | tasks are attached to that cpuset, any pages that task had | 627 | tasks are attached to that cpuset, any pages that task had |
| 628 | allocated to it on nodes in its previous cpuset are migrated | 628 | allocated to it on nodes in its previous cpuset are migrated |
| 629 | to the tasks new cpuset. The relative placement of the page within | 629 | to the tasks new cpuset. The relative placement of the page within |
| @@ -631,12 +631,12 @@ the cpuset is preserved during these migration operations if possible. | |||
| 631 | For example if the page was on the second valid node of the prior cpuset | 631 | For example if the page was on the second valid node of the prior cpuset |
| 632 | then the page will be placed on the second valid node of the new cpuset. | 632 | then the page will be placed on the second valid node of the new cpuset. |
| 633 | 633 | ||
| 634 | Also if 'memory_migrate' is set true, then if that cpusets | 634 | Also if 'cpuset.memory_migrate' is set true, then if that cpusets |
| 635 | 'mems' file is modified, pages allocated to tasks in that | 635 | 'cpuset.mems' file is modified, pages allocated to tasks in that |
| 636 | cpuset, that were on nodes in the previous setting of 'mems', | 636 | cpuset, that were on nodes in the previous setting of 'cpuset.mems', |
| 637 | will be moved to nodes in the new setting of 'mems.' | 637 | will be moved to nodes in the new setting of 'mems.' |
| 638 | Pages that were not in the tasks prior cpuset, or in the cpusets | 638 | Pages that were not in the tasks prior cpuset, or in the cpusets |
| 639 | prior 'mems' setting, will not be moved. | 639 | prior 'cpuset.mems' setting, will not be moved. |
| 640 | 640 | ||
| 641 | There is an exception to the above. If hotplug functionality is used | 641 | There is an exception to the above. If hotplug functionality is used |
| 642 | to remove all the CPUs that are currently assigned to a cpuset, | 642 | to remove all the CPUs that are currently assigned to a cpuset, |
| @@ -678,8 +678,8 @@ and then start a subshell 'sh' in that cpuset: | |||
| 678 | cd /dev/cpuset | 678 | cd /dev/cpuset |
| 679 | mkdir Charlie | 679 | mkdir Charlie |
| 680 | cd Charlie | 680 | cd Charlie |
| 681 | /bin/echo 2-3 > cpus | 681 | /bin/echo 2-3 > cpuset.cpus |
| 682 | /bin/echo 1 > mems | 682 | /bin/echo 1 > cpuset.mems |
| 683 | /bin/echo $$ > tasks | 683 | /bin/echo $$ > tasks |
| 684 | sh | 684 | sh |
| 685 | # The subshell 'sh' is now running in cpuset Charlie | 685 | # The subshell 'sh' is now running in cpuset Charlie |
| @@ -725,10 +725,13 @@ Now you want to do something with this cpuset. | |||
| 725 | 725 | ||
| 726 | In this directory you can find several files: | 726 | In this directory you can find several files: |
| 727 | # ls | 727 | # ls |
| 728 | cpu_exclusive memory_migrate mems tasks | 728 | cpuset.cpu_exclusive cpuset.memory_spread_slab |
| 729 | cpus memory_pressure notify_on_release | 729 | cpuset.cpus cpuset.mems |
| 730 | mem_exclusive memory_spread_page sched_load_balance | 730 | cpuset.mem_exclusive cpuset.sched_load_balance |
| 731 | mem_hardwall memory_spread_slab sched_relax_domain_level | 731 | cpuset.mem_hardwall cpuset.sched_relax_domain_level |
| 732 | cpuset.memory_migrate notify_on_release | ||
| 733 | cpuset.memory_pressure tasks | ||
| 734 | cpuset.memory_spread_page | ||
| 732 | 735 | ||
| 733 | Reading them will give you information about the state of this cpuset: | 736 | Reading them will give you information about the state of this cpuset: |
| 734 | the CPUs and Memory Nodes it can use, the processes that are using | 737 | the CPUs and Memory Nodes it can use, the processes that are using |
| @@ -736,13 +739,13 @@ it, its properties. By writing to these files you can manipulate | |||
| 736 | the cpuset. | 739 | the cpuset. |
| 737 | 740 | ||
| 738 | Set some flags: | 741 | Set some flags: |
| 739 | # /bin/echo 1 > cpu_exclusive | 742 | # /bin/echo 1 > cpuset.cpu_exclusive |
| 740 | 743 | ||
| 741 | Add some cpus: | 744 | Add some cpus: |
| 742 | # /bin/echo 0-7 > cpus | 745 | # /bin/echo 0-7 > cpuset.cpus |
| 743 | 746 | ||
| 744 | Add some mems: | 747 | Add some mems: |
| 745 | # /bin/echo 0-7 > mems | 748 | # /bin/echo 0-7 > cpuset.mems |
| 746 | 749 | ||
| 747 | Now attach your shell to this cpuset: | 750 | Now attach your shell to this cpuset: |
| 748 | # /bin/echo $$ > tasks | 751 | # /bin/echo $$ > tasks |
| @@ -774,28 +777,28 @@ echo "/sbin/cpuset_release_agent" > /dev/cpuset/release_agent | |||
| 774 | This is the syntax to use when writing in the cpus or mems files | 777 | This is the syntax to use when writing in the cpus or mems files |
| 775 | in cpuset directories: | 778 | in cpuset directories: |
| 776 | 779 | ||
| 777 | # /bin/echo 1-4 > cpus -> set cpus list to cpus 1,2,3,4 | 780 | # /bin/echo 1-4 > cpuset.cpus -> set cpus list to cpus 1,2,3,4 |
| 778 | # /bin/echo 1,2,3,4 > cpus -> set cpus list to cpus 1,2,3,4 | 781 | # /bin/echo 1,2,3,4 > cpuset.cpus -> set cpus list to cpus 1,2,3,4 |
| 779 | 782 | ||
| 780 | To add a CPU to a cpuset, write the new list of CPUs including the | 783 | To add a CPU to a cpuset, write the new list of CPUs including the |
| 781 | CPU to be added. To add 6 to the above cpuset: | 784 | CPU to be added. To add 6 to the above cpuset: |
| 782 | 785 | ||
| 783 | # /bin/echo 1-4,6 > cpus -> set cpus list to cpus 1,2,3,4,6 | 786 | # /bin/echo 1-4,6 > cpuset.cpus -> set cpus list to cpus 1,2,3,4,6 |
| 784 | 787 | ||
| 785 | Similarly to remove a CPU from a cpuset, write the new list of CPUs | 788 | Similarly to remove a CPU from a cpuset, write the new list of CPUs |
| 786 | without the CPU to be removed. | 789 | without the CPU to be removed. |
| 787 | 790 | ||
| 788 | To remove all the CPUs: | 791 | To remove all the CPUs: |
| 789 | 792 | ||
| 790 | # /bin/echo "" > cpus -> clear cpus list | 793 | # /bin/echo "" > cpuset.cpus -> clear cpus list |
| 791 | 794 | ||
| 792 | 2.3 Setting flags | 795 | 2.3 Setting flags |
| 793 | ----------------- | 796 | ----------------- |
| 794 | 797 | ||
| 795 | The syntax is very simple: | 798 | The syntax is very simple: |
| 796 | 799 | ||
| 797 | # /bin/echo 1 > cpu_exclusive -> set flag 'cpu_exclusive' | 800 | # /bin/echo 1 > cpuset.cpu_exclusive -> set flag 'cpuset.cpu_exclusive' |
| 798 | # /bin/echo 0 > cpu_exclusive -> unset flag 'cpu_exclusive' | 801 | # /bin/echo 0 > cpuset.cpu_exclusive -> unset flag 'cpuset.cpu_exclusive' |
| 799 | 802 | ||
| 800 | 2.4 Attaching processes | 803 | 2.4 Attaching processes |
| 801 | ----------------------- | 804 | ----------------------- |
diff --git a/Documentation/console/console.txt b/Documentation/console/console.txt index 877a1b26cc3d..926cf1b5e63e 100644 --- a/Documentation/console/console.txt +++ b/Documentation/console/console.txt | |||
| @@ -74,7 +74,7 @@ driver takes over the consoles vacated by the driver. Binding, on the other | |||
| 74 | hand, will bind the driver to the consoles that are currently occupied by a | 74 | hand, will bind the driver to the consoles that are currently occupied by a |
| 75 | system driver. | 75 | system driver. |
| 76 | 76 | ||
| 77 | NOTE1: Binding and binding must be selected in Kconfig. It's under: | 77 | NOTE1: Binding and unbinding must be selected in Kconfig. It's under: |
| 78 | 78 | ||
| 79 | Device Drivers -> Character devices -> Support for binding and unbinding | 79 | Device Drivers -> Character devices -> Support for binding and unbinding |
| 80 | console drivers | 80 | console drivers |
diff --git a/Documentation/driver-model/platform.txt b/Documentation/driver-model/platform.txt index 2e2c2ea90ceb..41f41632ee55 100644 --- a/Documentation/driver-model/platform.txt +++ b/Documentation/driver-model/platform.txt | |||
| @@ -192,7 +192,7 @@ command line. This will execute all matching early_param() callbacks. | |||
| 192 | User specified early platform devices will be registered at this point. | 192 | User specified early platform devices will be registered at this point. |
| 193 | For the early serial console case the user can specify port on the | 193 | For the early serial console case the user can specify port on the |
| 194 | kernel command line as "earlyprintk=serial.0" where "earlyprintk" is | 194 | kernel command line as "earlyprintk=serial.0" where "earlyprintk" is |
| 195 | the class string, "serial" is the name of the platfrom driver and | 195 | the class string, "serial" is the name of the platform driver and |
| 196 | 0 is the platform device id. If the id is -1 then the dot and the | 196 | 0 is the platform device id. If the id is -1 then the dot and the |
| 197 | id can be omitted. | 197 | id can be omitted. |
| 198 | 198 | ||
diff --git a/Documentation/eisa.txt b/Documentation/eisa.txt index 60e361ba08c0..f297fc1202ae 100644 --- a/Documentation/eisa.txt +++ b/Documentation/eisa.txt | |||
| @@ -171,7 +171,7 @@ device. | |||
| 171 | virtual_root.force_probe : | 171 | virtual_root.force_probe : |
| 172 | 172 | ||
| 173 | Force the probing code to probe EISA slots even when it cannot find an | 173 | Force the probing code to probe EISA slots even when it cannot find an |
| 174 | EISA compliant mainboard (nothing appears on slot 0). Defaultd to 0 | 174 | EISA compliant mainboard (nothing appears on slot 0). Defaults to 0 |
| 175 | (don't force), and set to 1 (force probing) when either | 175 | (don't force), and set to 1 (force probing) when either |
| 176 | CONFIG_ALPHA_JENSEN or CONFIG_EISA_VLB_PRIMING are set. | 176 | CONFIG_ALPHA_JENSEN or CONFIG_EISA_VLB_PRIMING are set. |
| 177 | 177 | ||
diff --git a/Documentation/filesystems/proc.txt b/Documentation/filesystems/proc.txt index 96a44dd95e03..a4f30faa4f1f 100644 --- a/Documentation/filesystems/proc.txt +++ b/Documentation/filesystems/proc.txt | |||
| @@ -195,7 +195,7 @@ asynchronous manner and the vaule may not be very precise. To see a precise | |||
| 195 | snapshot of a moment, you can see /proc/<pid>/smaps file and scan page table. | 195 | snapshot of a moment, you can see /proc/<pid>/smaps file and scan page table. |
| 196 | It's slow but very precise. | 196 | It's slow but very precise. |
| 197 | 197 | ||
| 198 | Table 1-2: Contents of the statm files (as of 2.6.30-rc7) | 198 | Table 1-2: Contents of the status files (as of 2.6.30-rc7) |
| 199 | .............................................................................. | 199 | .............................................................................. |
| 200 | Field Content | 200 | Field Content |
| 201 | Name filename of the executable | 201 | Name filename of the executable |
diff --git a/Documentation/hwmon/abituguru b/Documentation/hwmon/abituguru index 87ffa0f5ec70..5eb3b9d5f0d5 100644 --- a/Documentation/hwmon/abituguru +++ b/Documentation/hwmon/abituguru | |||
| @@ -30,7 +30,7 @@ Supported chips: | |||
| 30 | bank1_types=1,1,0,0,0,0,0,2,0,0,0,0,2,0,0,1 | 30 | bank1_types=1,1,0,0,0,0,0,2,0,0,0,0,2,0,0,1 |
| 31 | You may also need to specify the fan_sensors option for these boards | 31 | You may also need to specify the fan_sensors option for these boards |
| 32 | fan_sensors=5 | 32 | fan_sensors=5 |
| 33 | 2) There is a seperate abituguru3 driver for these motherboards, | 33 | 2) There is a separate abituguru3 driver for these motherboards, |
| 34 | the abituguru (without the 3 !) driver will not work on these | 34 | the abituguru (without the 3 !) driver will not work on these |
| 35 | motherboards (and visa versa)! | 35 | motherboards (and visa versa)! |
| 36 | 36 | ||
diff --git a/Documentation/input/rotary-encoder.txt b/Documentation/input/rotary-encoder.txt index 3a6aec40c0b0..8b4129de1d2d 100644 --- a/Documentation/input/rotary-encoder.txt +++ b/Documentation/input/rotary-encoder.txt | |||
| @@ -75,7 +75,7 @@ and the number of steps or will clamp at the maximum and zero depending on | |||
| 75 | the configuration. | 75 | the configuration. |
| 76 | 76 | ||
| 77 | Because GPIO to IRQ mapping is platform specific, this information must | 77 | Because GPIO to IRQ mapping is platform specific, this information must |
| 78 | be given in seperately to the driver. See the example below. | 78 | be given in separately to the driver. See the example below. |
| 79 | 79 | ||
| 80 | ---------<snip>--------- | 80 | ---------<snip>--------- |
| 81 | 81 | ||
diff --git a/Documentation/laptops/00-INDEX b/Documentation/laptops/00-INDEX index ee5692b26dd4..df4fb52d4594 100644 --- a/Documentation/laptops/00-INDEX +++ b/Documentation/laptops/00-INDEX | |||
| @@ -2,6 +2,10 @@ | |||
| 2 | - This file | 2 | - This file |
| 3 | acer-wmi.txt | 3 | acer-wmi.txt |
| 4 | - information on the Acer Laptop WMI Extras driver. | 4 | - information on the Acer Laptop WMI Extras driver. |
| 5 | asus-laptop.txt | ||
| 6 | - information on the Asus Laptop Extras driver. | ||
| 7 | disk-shock-protection.txt | ||
| 8 | - information on hard disk shock protection. | ||
| 5 | laptop-mode.txt | 9 | laptop-mode.txt |
| 6 | - how to conserve battery power using laptop-mode. | 10 | - how to conserve battery power using laptop-mode. |
| 7 | sony-laptop.txt | 11 | sony-laptop.txt |
diff --git a/Documentation/networking/skfp.txt b/Documentation/networking/skfp.txt index abfddf81e34a..203ec66c9fb4 100644 --- a/Documentation/networking/skfp.txt +++ b/Documentation/networking/skfp.txt | |||
| @@ -68,7 +68,7 @@ Compaq adapters (not tested): | |||
| 68 | ======================= | 68 | ======================= |
| 69 | 69 | ||
| 70 | From v2.01 on, the driver is integrated in the linux kernel sources. | 70 | From v2.01 on, the driver is integrated in the linux kernel sources. |
| 71 | Therefor, the installation is the same as for any other adapter | 71 | Therefore, the installation is the same as for any other adapter |
| 72 | supported by the kernel. | 72 | supported by the kernel. |
| 73 | Refer to the manual of your distribution about the installation | 73 | Refer to the manual of your distribution about the installation |
| 74 | of network adapters. | 74 | of network adapters. |
diff --git a/Documentation/networking/timestamping/timestamping.c b/Documentation/networking/timestamping/timestamping.c index a7936fe8444a..bab619a48214 100644 --- a/Documentation/networking/timestamping/timestamping.c +++ b/Documentation/networking/timestamping/timestamping.c | |||
| @@ -370,7 +370,7 @@ int main(int argc, char **argv) | |||
| 370 | } | 370 | } |
| 371 | 371 | ||
| 372 | sock = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP); | 372 | sock = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP); |
| 373 | if (socket < 0) | 373 | if (sock < 0) |
| 374 | bail("socket"); | 374 | bail("socket"); |
| 375 | 375 | ||
| 376 | memset(&device, 0, sizeof(device)); | 376 | memset(&device, 0, sizeof(device)); |
diff --git a/Documentation/pnp.txt b/Documentation/pnp.txt index a327db67782a..763e4659bf18 100644 --- a/Documentation/pnp.txt +++ b/Documentation/pnp.txt | |||
| @@ -57,7 +57,7 @@ PC standard floppy disk controller | |||
| 57 | # cat resources | 57 | # cat resources |
| 58 | DISABLED | 58 | DISABLED |
| 59 | 59 | ||
| 60 | - Notice the string "DISABLED". THis means the device is not active. | 60 | - Notice the string "DISABLED". This means the device is not active. |
| 61 | 61 | ||
| 62 | 3.) check the device's possible configurations (optional) | 62 | 3.) check the device's possible configurations (optional) |
| 63 | # cat options | 63 | # cat options |
| @@ -139,7 +139,7 @@ Plug and Play but it is planned to be in the near future. | |||
| 139 | 139 | ||
| 140 | Requirements for a Linux PnP protocol: | 140 | Requirements for a Linux PnP protocol: |
| 141 | 1.) the protocol must use EISA IDs | 141 | 1.) the protocol must use EISA IDs |
| 142 | 2.) the protocol must inform the PnP Layer of a devices current configuration | 142 | 2.) the protocol must inform the PnP Layer of a device's current configuration |
| 143 | - the ability to set resources is optional but preferred. | 143 | - the ability to set resources is optional but preferred. |
| 144 | 144 | ||
| 145 | The following are PnP protocol related functions: | 145 | The following are PnP protocol related functions: |
| @@ -158,7 +158,7 @@ pnp_remove_device | |||
| 158 | - automatically will free mem used by the device and related structures | 158 | - automatically will free mem used by the device and related structures |
| 159 | 159 | ||
| 160 | pnp_add_id | 160 | pnp_add_id |
| 161 | - adds a EISA ID to the list of supported IDs for the specified device | 161 | - adds an EISA ID to the list of supported IDs for the specified device |
| 162 | 162 | ||
| 163 | For more information consult the source of a protocol such as | 163 | For more information consult the source of a protocol such as |
| 164 | /drivers/pnp/pnpbios/core.c. | 164 | /drivers/pnp/pnpbios/core.c. |
| @@ -167,7 +167,7 @@ For more information consult the source of a protocol such as | |||
| 167 | 167 | ||
| 168 | Linux Plug and Play Drivers | 168 | Linux Plug and Play Drivers |
| 169 | --------------------------- | 169 | --------------------------- |
| 170 | This section contains information for linux PnP driver developers. | 170 | This section contains information for Linux PnP driver developers. |
| 171 | 171 | ||
| 172 | The New Way | 172 | The New Way |
| 173 | ........... | 173 | ........... |
| @@ -235,11 +235,10 @@ static int __init serial8250_pnp_init(void) | |||
| 235 | The Old Way | 235 | The Old Way |
| 236 | ........... | 236 | ........... |
| 237 | 237 | ||
| 238 | a series of compatibility functions have been created to make it easy to convert | 238 | A series of compatibility functions have been created to make it easy to convert |
| 239 | |||
| 240 | ISAPNP drivers. They should serve as a temporary solution only. | 239 | ISAPNP drivers. They should serve as a temporary solution only. |
| 241 | 240 | ||
| 242 | they are as follows: | 241 | They are as follows: |
| 243 | 242 | ||
| 244 | struct pnp_card *pnp_find_card(unsigned short vendor, | 243 | struct pnp_card *pnp_find_card(unsigned short vendor, |
| 245 | unsigned short device, | 244 | unsigned short device, |
diff --git a/Documentation/power/runtime_pm.txt b/Documentation/power/runtime_pm.txt index ab00eeddecaf..55b859b3bc72 100644 --- a/Documentation/power/runtime_pm.txt +++ b/Documentation/power/runtime_pm.txt | |||
| @@ -256,7 +256,7 @@ drivers/base/power/runtime.c and include/linux/pm_runtime.h: | |||
| 256 | to suspend the device again in future | 256 | to suspend the device again in future |
| 257 | 257 | ||
| 258 | int pm_runtime_resume(struct device *dev); | 258 | int pm_runtime_resume(struct device *dev); |
| 259 | - execute the subsystem-leve resume callback for the device; returns 0 on | 259 | - execute the subsystem-level resume callback for the device; returns 0 on |
| 260 | success, 1 if the device's run-time PM status was already 'active' or | 260 | success, 1 if the device's run-time PM status was already 'active' or |
| 261 | error code on failure, where -EAGAIN means it may be safe to attempt to | 261 | error code on failure, where -EAGAIN means it may be safe to attempt to |
| 262 | resume the device again in future, but 'power.runtime_error' should be | 262 | resume the device again in future, but 'power.runtime_error' should be |
diff --git a/Documentation/s390/kvm.txt b/Documentation/s390/kvm.txt index 6f5ceb0f09fc..85f3280d7ef6 100644 --- a/Documentation/s390/kvm.txt +++ b/Documentation/s390/kvm.txt | |||
| @@ -102,7 +102,7 @@ args: unsigned long | |||
| 102 | see also: include/linux/kvm.h | 102 | see also: include/linux/kvm.h |
| 103 | This ioctl stores the state of the cpu at the guest real address given as | 103 | This ioctl stores the state of the cpu at the guest real address given as |
| 104 | argument, unless one of the following values defined in include/linux/kvm.h | 104 | argument, unless one of the following values defined in include/linux/kvm.h |
| 105 | is given as arguement: | 105 | is given as argument: |
| 106 | KVM_S390_STORE_STATUS_NOADDR - the CPU stores its status to the save area in | 106 | KVM_S390_STORE_STATUS_NOADDR - the CPU stores its status to the save area in |
| 107 | absolute lowcore as defined by the principles of operation | 107 | absolute lowcore as defined by the principles of operation |
| 108 | KVM_S390_STORE_STATUS_PREFIXED - the CPU stores its status to the save area in | 108 | KVM_S390_STORE_STATUS_PREFIXED - the CPU stores its status to the save area in |
diff --git a/Documentation/scsi/ChangeLog.lpfc b/Documentation/scsi/ChangeLog.lpfc index ff19a52fe004..2ffc1148eb95 100644 --- a/Documentation/scsi/ChangeLog.lpfc +++ b/Documentation/scsi/ChangeLog.lpfc | |||
| @@ -989,8 +989,8 @@ Changes from 20040709 to 20040716 | |||
| 989 | * Remove redundant port_cmp != 2 check in if | 989 | * Remove redundant port_cmp != 2 check in if |
| 990 | (!port_cmp) { .... if (port_cmp != 2).... } | 990 | (!port_cmp) { .... if (port_cmp != 2).... } |
| 991 | * Clock changes: removed struct clk_data and timerList. | 991 | * Clock changes: removed struct clk_data and timerList. |
| 992 | * Clock changes: seperate nodev_tmo and els_retry_delay into 2 | 992 | * Clock changes: separate nodev_tmo and els_retry_delay into 2 |
| 993 | seperate timers and convert to 1 argument changed | 993 | separate timers and convert to 1 argument changed |
| 994 | LPFC_NODE_FARP_PEND_t to struct lpfc_node_farp_pend convert | 994 | LPFC_NODE_FARP_PEND_t to struct lpfc_node_farp_pend convert |
| 995 | ipfarp_tmo to 1 argument convert target struct tmofunc and | 995 | ipfarp_tmo to 1 argument convert target struct tmofunc and |
| 996 | rtplunfunc to 1 argument * cr_count, cr_delay and | 996 | rtplunfunc to 1 argument * cr_count, cr_delay and |
| @@ -1514,7 +1514,7 @@ Changes from 20040402 to 20040409 | |||
| 1514 | * Remove unused elxclock declaration in elx_sli.h. | 1514 | * Remove unused elxclock declaration in elx_sli.h. |
| 1515 | * Since everywhere IOCB_ENTRY is used, the return value is cast, | 1515 | * Since everywhere IOCB_ENTRY is used, the return value is cast, |
| 1516 | move the cast into the macro. | 1516 | move the cast into the macro. |
| 1517 | * Split ioctls out into seperate files | 1517 | * Split ioctls out into separate files |
| 1518 | 1518 | ||
| 1519 | Changes from 20040326 to 20040402 | 1519 | Changes from 20040326 to 20040402 |
| 1520 | 1520 | ||
| @@ -1534,7 +1534,7 @@ Changes from 20040326 to 20040402 | |||
| 1534 | * Unused variable cleanup | 1534 | * Unused variable cleanup |
| 1535 | * Use Linux list macros for DMABUF_t | 1535 | * Use Linux list macros for DMABUF_t |
| 1536 | * Break up ioctls into 3 sections, dfc, util, hbaapi | 1536 | * Break up ioctls into 3 sections, dfc, util, hbaapi |
| 1537 | rearranged code so this could be easily seperated into a | 1537 | rearranged code so this could be easily separated into a |
| 1538 | differnet module later All 3 are currently turned on by | 1538 | differnet module later All 3 are currently turned on by |
| 1539 | defines in lpfc_ioctl.c LPFC_DFC_IOCTL, LPFC_UTIL_IOCTL, | 1539 | defines in lpfc_ioctl.c LPFC_DFC_IOCTL, LPFC_UTIL_IOCTL, |
| 1540 | LPFC_HBAAPI_IOCTL | 1540 | LPFC_HBAAPI_IOCTL |
| @@ -1551,7 +1551,7 @@ Changes from 20040326 to 20040402 | |||
| 1551 | started by lpfc_online(). lpfc_offline() only stopped | 1551 | started by lpfc_online(). lpfc_offline() only stopped |
| 1552 | els_timeout routine. It now stops all timeout routines | 1552 | els_timeout routine. It now stops all timeout routines |
| 1553 | associated with that hba. | 1553 | associated with that hba. |
| 1554 | * Replace seperate next and prev pointers in struct | 1554 | * Replace separate next and prev pointers in struct |
| 1555 | lpfc_bindlist with list_head type. In elxHBA_t, replace | 1555 | lpfc_bindlist with list_head type. In elxHBA_t, replace |
| 1556 | fc_nlpbind_start and _end with fc_nlpbind_list and use | 1556 | fc_nlpbind_start and _end with fc_nlpbind_list and use |
| 1557 | list_head macros to access it. | 1557 | list_head macros to access it. |
diff --git a/Documentation/trace/ftrace.txt b/Documentation/trace/ftrace.txt index bab3040da548..03485bfbd797 100644 --- a/Documentation/trace/ftrace.txt +++ b/Documentation/trace/ftrace.txt | |||
| @@ -1588,7 +1588,7 @@ module author does not need to worry about it. | |||
| 1588 | 1588 | ||
| 1589 | When tracing is enabled, kstop_machine is called to prevent | 1589 | When tracing is enabled, kstop_machine is called to prevent |
| 1590 | races with the CPUS executing code being modified (which can | 1590 | races with the CPUS executing code being modified (which can |
| 1591 | cause the CPU to do undesireable things), and the nops are | 1591 | cause the CPU to do undesirable things), and the nops are |
| 1592 | patched back to calls. But this time, they do not call mcount | 1592 | patched back to calls. But this time, they do not call mcount |
| 1593 | (which is just a function stub). They now call into the ftrace | 1593 | (which is just a function stub). They now call into the ftrace |
| 1594 | infrastructure. | 1594 | infrastructure. |
diff --git a/arch/arm/boot/bootp/init.S b/arch/arm/boot/bootp/init.S index df7bc7068d0f..8b0de41c3dcb 100644 --- a/arch/arm/boot/bootp/init.S +++ b/arch/arm/boot/bootp/init.S | |||
| @@ -49,7 +49,7 @@ _start: add lr, pc, #-0x8 @ lr = current load addr | |||
| 49 | /* | 49 | /* |
| 50 | * find the end of the tag list, and then add an INITRD tag on the end. | 50 | * find the end of the tag list, and then add an INITRD tag on the end. |
| 51 | * If there is already an INITRD tag, then we ignore it; the last INITRD | 51 | * If there is already an INITRD tag, then we ignore it; the last INITRD |
| 52 | * tag takes precidence. | 52 | * tag takes precedence. |
| 53 | */ | 53 | */ |
| 54 | taglist: ldr r10, [r9, #0] @ tag length | 54 | taglist: ldr r10, [r9, #0] @ tag length |
| 55 | teq r10, #0 @ last tag (zero length)? | 55 | teq r10, #0 @ last tag (zero length)? |
diff --git a/arch/arm/common/clkdev.c b/arch/arm/common/clkdev.c index 446b696196e3..6416d5b5020d 100644 --- a/arch/arm/common/clkdev.c +++ b/arch/arm/common/clkdev.c | |||
| @@ -32,7 +32,7 @@ static DEFINE_MUTEX(clocks_mutex); | |||
| 32 | * If an entry has a device ID, it must match | 32 | * If an entry has a device ID, it must match |
| 33 | * If an entry has a connection ID, it must match | 33 | * If an entry has a connection ID, it must match |
| 34 | * Then we take the most specific entry - with the following | 34 | * Then we take the most specific entry - with the following |
| 35 | * order of precidence: dev+con > dev only > con only. | 35 | * order of precedence: dev+con > dev only > con only. |
| 36 | */ | 36 | */ |
| 37 | static struct clk *clk_find(const char *dev_id, const char *con_id) | 37 | static struct clk *clk_find(const char *dev_id, const char *con_id) |
| 38 | { | 38 | { |
diff --git a/arch/arm/mach-at91/include/mach/at91_mci.h b/arch/arm/mach-at91/include/mach/at91_mci.h index 550d503a1bca..57f8ee154943 100644 --- a/arch/arm/mach-at91/include/mach/at91_mci.h +++ b/arch/arm/mach-at91/include/mach/at91_mci.h | |||
| @@ -77,7 +77,7 @@ | |||
| 77 | 77 | ||
| 78 | #define AT91_MCI_BLKR 0x18 /* Block Register */ | 78 | #define AT91_MCI_BLKR 0x18 /* Block Register */ |
| 79 | #define AT91_MCI_BLKR_BCNT(n) ((0xffff & (n)) << 0) /* Block count */ | 79 | #define AT91_MCI_BLKR_BCNT(n) ((0xffff & (n)) << 0) /* Block count */ |
| 80 | #define AT91_MCI_BLKR_BLKLEN(n) ((0xffff & (n)) << 16) /* Block lenght */ | 80 | #define AT91_MCI_BLKR_BLKLEN(n) ((0xffff & (n)) << 16) /* Block length */ |
| 81 | 81 | ||
| 82 | #define AT91_MCI_RSPR(n) (0x20 + ((n) * 4)) /* Response Registers 0-3 */ | 82 | #define AT91_MCI_RSPR(n) (0x20 + ((n) * 4)) /* Response Registers 0-3 */ |
| 83 | #define AT91_MCR_RDR 0x30 /* Receive Data Register */ | 83 | #define AT91_MCR_RDR 0x30 /* Receive Data Register */ |
diff --git a/arch/arm/mach-davinci/include/mach/i2c.h b/arch/arm/mach-davinci/include/mach/i2c.h index 39fdceac8414..2312d197dfb7 100644 --- a/arch/arm/mach-davinci/include/mach/i2c.h +++ b/arch/arm/mach-davinci/include/mach/i2c.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * DaVinci I2C controller platfrom_device info | 2 | * DaVinci I2C controller platform_device info |
| 3 | * | 3 | * |
| 4 | * Author: Vladimir Barinov, MontaVista Software, Inc. <source@mvista.com> | 4 | * Author: Vladimir Barinov, MontaVista Software, Inc. <source@mvista.com> |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-ep93xx/micro9.c b/arch/arm/mach-ep93xx/micro9.c index f3757a1c5a10..c33360e82868 100644 --- a/arch/arm/mach-ep93xx/micro9.c +++ b/arch/arm/mach-ep93xx/micro9.c | |||
| @@ -28,7 +28,7 @@ | |||
| 28 | * | 28 | * |
| 29 | * Micro9-High has up to 64MB of 32-bit flash on CS1 | 29 | * Micro9-High has up to 64MB of 32-bit flash on CS1 |
| 30 | * Micro9-Mid has up to 64MB of either 32-bit or 16-bit flash on CS1 | 30 | * Micro9-Mid has up to 64MB of either 32-bit or 16-bit flash on CS1 |
| 31 | * Micro9-Lite uses a seperate MTD map driver for flash support | 31 | * Micro9-Lite uses a separate MTD map driver for flash support |
| 32 | * Micro9-Slim has up to 64MB of either 32-bit or 16-bit flash on CS1 | 32 | * Micro9-Slim has up to 64MB of either 32-bit or 16-bit flash on CS1 |
| 33 | *************************************************************************/ | 33 | *************************************************************************/ |
| 34 | static struct physmap_flash_data micro9_flash_data; | 34 | static struct physmap_flash_data micro9_flash_data; |
diff --git a/arch/arm/mach-nomadik/board-nhk8815.c b/arch/arm/mach-nomadik/board-nhk8815.c index 9438bf6613a3..ab3712c86d2b 100644 --- a/arch/arm/mach-nomadik/board-nhk8815.c +++ b/arch/arm/mach-nomadik/board-nhk8815.c | |||
| @@ -38,7 +38,7 @@ | |||
| 38 | #define SRC_CR_INIT_MASK 0x00007fff | 38 | #define SRC_CR_INIT_MASK 0x00007fff |
| 39 | #define SRC_CR_INIT_VAL 0x2aaa8000 | 39 | #define SRC_CR_INIT_VAL 0x2aaa8000 |
| 40 | 40 | ||
| 41 | /* These adresses span 16MB, so use three individual pages */ | 41 | /* These addresses span 16MB, so use three individual pages */ |
| 42 | static struct resource nhk8815_nand_resources[] = { | 42 | static struct resource nhk8815_nand_resources[] = { |
| 43 | { | 43 | { |
| 44 | .name = "nand_addr", | 44 | .name = "nand_addr", |
diff --git a/arch/arm/mach-omap2/board-3630sdp.c b/arch/arm/mach-omap2/board-3630sdp.c index 4386d2b4a785..4386d2b4a785 100755..100644 --- a/arch/arm/mach-omap2/board-3630sdp.c +++ b/arch/arm/mach-omap2/board-3630sdp.c | |||
diff --git a/arch/arm/mach-omap2/board-zoom-peripherals.c b/arch/arm/mach-omap2/board-zoom-peripherals.c index ca95d8d64136..ca95d8d64136 100755..100644 --- a/arch/arm/mach-omap2/board-zoom-peripherals.c +++ b/arch/arm/mach-omap2/board-zoom-peripherals.c | |||
diff --git a/arch/arm/mach-s3c2410/include/mach/spi-gpio.h b/arch/arm/mach-s3c2410/include/mach/spi-gpio.h index 980a099e209c..dcef2287cb38 100644 --- a/arch/arm/mach-s3c2410/include/mach/spi-gpio.h +++ b/arch/arm/mach-s3c2410/include/mach/spi-gpio.h | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | * Copyright (c) 2006 Simtec Electronics | 3 | * Copyright (c) 2006 Simtec Electronics |
| 4 | * Ben Dooks <ben@simtec.co.uk> | 4 | * Ben Dooks <ben@simtec.co.uk> |
| 5 | * | 5 | * |
| 6 | * S3C2410 - SPI Controller platfrom_device info | 6 | * S3C2410 - SPI Controller platform_device info |
| 7 | * | 7 | * |
| 8 | * This program is free software; you can redistribute it and/or modify | 8 | * This program is free software; you can redistribute it and/or modify |
| 9 | * it under the terms of the GNU General Public License version 2 as | 9 | * it under the terms of the GNU General Public License version 2 as |
diff --git a/arch/arm/mach-s5pc100/setup-sdhci.c b/arch/arm/mach-s5pc100/setup-sdhci.c index 4385986a3da0..ea7ff19adb95 100644 --- a/arch/arm/mach-s5pc100/setup-sdhci.c +++ b/arch/arm/mach-s5pc100/setup-sdhci.c | |||
| @@ -28,8 +28,8 @@ | |||
| 28 | char *s5pc100_hsmmc_clksrcs[4] = { | 28 | char *s5pc100_hsmmc_clksrcs[4] = { |
| 29 | [0] = "hsmmc", | 29 | [0] = "hsmmc", |
| 30 | [1] = "hsmmc", | 30 | [1] = "hsmmc", |
| 31 | /* [2] = "mmc_bus", not yet succesfuuly used yet */ | 31 | /* [2] = "mmc_bus", not yet successfully used yet */ |
| 32 | /* [3] = "48m", - note not succesfully used yet */ | 32 | /* [3] = "48m", - note not successfully used yet */ |
| 33 | }; | 33 | }; |
| 34 | 34 | ||
| 35 | 35 | ||
diff --git a/arch/arm/mach-u300/core.c b/arch/arm/mach-u300/core.c index 01b50313914c..5f34eb674d68 100644 --- a/arch/arm/mach-u300/core.c +++ b/arch/arm/mach-u300/core.c | |||
| @@ -358,7 +358,7 @@ static struct resource ave_resources[] = { | |||
| 358 | /* | 358 | /* |
| 359 | * The AVE3e requires two regions of 256MB that it considers | 359 | * The AVE3e requires two regions of 256MB that it considers |
| 360 | * "invisible". The hardware will not be able to access these | 360 | * "invisible". The hardware will not be able to access these |
| 361 | * adresses, so they should never point to system RAM. | 361 | * addresses, so they should never point to system RAM. |
| 362 | */ | 362 | */ |
| 363 | { | 363 | { |
| 364 | .name = "AVE3e Reserved 0", | 364 | .name = "AVE3e Reserved 0", |
| @@ -1596,7 +1596,7 @@ static void __init u300_init_check_chip(void) | |||
| 1596 | /* | 1596 | /* |
| 1597 | * Some devices and their resources require reserved physical memory from | 1597 | * Some devices and their resources require reserved physical memory from |
| 1598 | * the end of the available RAM. This function traverses the list of devices | 1598 | * the end of the available RAM. This function traverses the list of devices |
| 1599 | * and assigns actual adresses to these. | 1599 | * and assigns actual addresses to these. |
| 1600 | */ | 1600 | */ |
| 1601 | static void __init u300_assign_physmem(void) | 1601 | static void __init u300_assign_physmem(void) |
| 1602 | { | 1602 | { |
diff --git a/arch/arm/mach-u300/include/mach/debug-macro.S b/arch/arm/mach-u300/include/mach/debug-macro.S index ca4a028c2661..92c12420256f 100644 --- a/arch/arm/mach-u300/include/mach/debug-macro.S +++ b/arch/arm/mach-u300/include/mach/debug-macro.S | |||
| @@ -11,7 +11,7 @@ | |||
| 11 | #include <mach/hardware.h> | 11 | #include <mach/hardware.h> |
| 12 | 12 | ||
| 13 | .macro addruart, rx, tmp | 13 | .macro addruart, rx, tmp |
| 14 | /* If we move the adress using MMU, use this. */ | 14 | /* If we move the address using MMU, use this. */ |
| 15 | mrc p15, 0, \rx, c1, c0 | 15 | mrc p15, 0, \rx, c1, c0 |
| 16 | tst \rx, #1 @ MMU enabled? | 16 | tst \rx, #1 @ MMU enabled? |
| 17 | ldreq \rx, = U300_SLOW_PER_PHYS_BASE @ MMU off, physical address | 17 | ldreq \rx, = U300_SLOW_PER_PHYS_BASE @ MMU off, physical address |
diff --git a/arch/arm/plat-s3c/include/plat/gpio-cfg-helpers.h b/arch/arm/plat-s3c/include/plat/gpio-cfg-helpers.h index 652e2bbdaa20..dda19da037ad 100644 --- a/arch/arm/plat-s3c/include/plat/gpio-cfg-helpers.h +++ b/arch/arm/plat-s3c/include/plat/gpio-cfg-helpers.h | |||
| @@ -78,7 +78,7 @@ extern int s3c_gpio_setcfg_s3c24xx_a(struct s3c_gpio_chip *chip, | |||
| 78 | * others = Special functions (dependant on bank) | 78 | * others = Special functions (dependant on bank) |
| 79 | * | 79 | * |
| 80 | * Note, since the code to deal with the case where there are two control | 80 | * Note, since the code to deal with the case where there are two control |
| 81 | * registers instead of one, we do not have a seperate set of functions for | 81 | * registers instead of one, we do not have a separate set of functions for |
| 82 | * each case. | 82 | * each case. |
| 83 | */ | 83 | */ |
| 84 | extern int s3c_gpio_setcfg_s3c64xx_4bit(struct s3c_gpio_chip *chip, | 84 | extern int s3c_gpio_setcfg_s3c64xx_4bit(struct s3c_gpio_chip *chip, |
diff --git a/arch/arm/plat-s3c/include/plat/nand.h b/arch/arm/plat-s3c/include/plat/nand.h index 226147b7e026..b64115fa93a4 100644 --- a/arch/arm/plat-s3c/include/plat/nand.h +++ b/arch/arm/plat-s3c/include/plat/nand.h | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | * Copyright (c) 2004 Simtec Electronics | 3 | * Copyright (c) 2004 Simtec Electronics |
| 4 | * Ben Dooks <ben@simtec.co.uk> | 4 | * Ben Dooks <ben@simtec.co.uk> |
| 5 | * | 5 | * |
| 6 | * S3C2410 - NAND device controller platfrom_device info | 6 | * S3C2410 - NAND device controller platform_device info |
| 7 | * | 7 | * |
| 8 | * This program is free software; you can redistribute it and/or modify | 8 | * This program is free software; you can redistribute it and/or modify |
| 9 | * it under the terms of the GNU General Public License version 2 as | 9 | * it under the terms of the GNU General Public License version 2 as |
diff --git a/arch/arm/plat-s3c/include/plat/regs-usb-hsotg-phy.h b/arch/arm/plat-s3c/include/plat/regs-usb-hsotg-phy.h index 36a85f5000c8..a111ad871833 100644 --- a/arch/arm/plat-s3c/include/plat/regs-usb-hsotg-phy.h +++ b/arch/arm/plat-s3c/include/plat/regs-usb-hsotg-phy.h | |||
| @@ -12,7 +12,7 @@ | |||
| 12 | * published by the Free Software Foundation. | 12 | * published by the Free Software Foundation. |
| 13 | */ | 13 | */ |
| 14 | 14 | ||
| 15 | /* Note, this is a seperate header file as some of the clock framework | 15 | /* Note, this is a separate header file as some of the clock framework |
| 16 | * needs to touch this if the clk_48m is used as the USB OHCI or other | 16 | * needs to touch this if the clk_48m is used as the USB OHCI or other |
| 17 | * peripheral source. | 17 | * peripheral source. |
| 18 | */ | 18 | */ |
diff --git a/arch/arm/plat-s3c24xx/include/plat/cpu-freq-core.h b/arch/arm/plat-s3c24xx/include/plat/cpu-freq-core.h index 33d421d78bad..d623235ae961 100644 --- a/arch/arm/plat-s3c24xx/include/plat/cpu-freq-core.h +++ b/arch/arm/plat-s3c24xx/include/plat/cpu-freq-core.h | |||
| @@ -135,7 +135,7 @@ struct s3c_cpufreq_config { | |||
| 135 | * @locktime_m: The lock-time in uS for the MPLL. | 135 | * @locktime_m: The lock-time in uS for the MPLL. |
| 136 | * @locktime_u: The lock-time in uS for the UPLL. | 136 | * @locktime_u: The lock-time in uS for the UPLL. |
| 137 | * @locttime_bits: The number of bits each LOCKTIME field. | 137 | * @locttime_bits: The number of bits each LOCKTIME field. |
| 138 | * @need_pll: Set if this driver needs to change the PLL values to acheive | 138 | * @need_pll: Set if this driver needs to change the PLL values to achieve |
| 139 | * any frequency changes. This is really only need by devices like the | 139 | * any frequency changes. This is really only need by devices like the |
| 140 | * S3C2410 where there is no or limited divider between the PLL and the | 140 | * S3C2410 where there is no or limited divider between the PLL and the |
| 141 | * ARMCLK. | 141 | * ARMCLK. |
diff --git a/arch/blackfin/include/asm/nand.h b/arch/blackfin/include/asm/nand.h index 3ae8b569edfc..3a1e79dfc8d9 100644 --- a/arch/blackfin/include/asm/nand.h +++ b/arch/blackfin/include/asm/nand.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * BF5XX - NAND flash controller platfrom_device info | 2 | * BF5XX - NAND flash controller platform_device info |
| 3 | * | 3 | * |
| 4 | * Copyright 2007-2008 Analog Devices, Inc. | 4 | * Copyright 2007-2008 Analog Devices, Inc. |
| 5 | * | 5 | * |
| @@ -8,7 +8,7 @@ | |||
| 8 | 8 | ||
| 9 | /* struct bf5xx_nand_platform | 9 | /* struct bf5xx_nand_platform |
| 10 | * | 10 | * |
| 11 | * define a interface between platfrom board specific code and | 11 | * define a interface between platform board specific code and |
| 12 | * bf54x NFC driver. | 12 | * bf54x NFC driver. |
| 13 | * | 13 | * |
| 14 | * nr_partitions = number of partitions pointed to be partitoons (or zero) | 14 | * nr_partitions = number of partitions pointed to be partitoons (or zero) |
diff --git a/arch/cris/arch-v10/lib/old_checksum.c b/arch/cris/arch-v10/lib/old_checksum.c index 1734b467efa6..8f79163f1394 100644 --- a/arch/cris/arch-v10/lib/old_checksum.c +++ b/arch/cris/arch-v10/lib/old_checksum.c | |||
| @@ -77,7 +77,7 @@ __wsum csum_partial(const void *p, int len, __wsum __sum) | |||
| 77 | sum += *buff++; | 77 | sum += *buff++; |
| 78 | 78 | ||
| 79 | if (endMarker > buff) | 79 | if (endMarker > buff) |
| 80 | sum += *(const u8 *)buff; /* add extra byte seperately */ | 80 | sum += *(const u8 *)buff; /* add extra byte separately */ |
| 81 | 81 | ||
| 82 | BITOFF; | 82 | BITOFF; |
| 83 | return (__force __wsum)sum; | 83 | return (__force __wsum)sum; |
diff --git a/arch/cris/arch-v32/mm/tlb.c b/arch/cris/arch-v32/mm/tlb.c index 6779bcb28ab0..c030d020660a 100644 --- a/arch/cris/arch-v32/mm/tlb.c +++ b/arch/cris/arch-v32/mm/tlb.c | |||
| @@ -189,7 +189,7 @@ switch_mm(struct mm_struct *prev, struct mm_struct *next, | |||
| 189 | spin_unlock(&mmu_context_lock); | 189 | spin_unlock(&mmu_context_lock); |
| 190 | 190 | ||
| 191 | /* | 191 | /* |
| 192 | * Remember the pgd for the fault handlers. Keep a seperate | 192 | * Remember the pgd for the fault handlers. Keep a separate |
| 193 | * copy of it because current and active_mm might be invalid | 193 | * copy of it because current and active_mm might be invalid |
| 194 | * at points where * there's still a need to derefer the pgd. | 194 | * at points where * there's still a need to derefer the pgd. |
| 195 | */ | 195 | */ |
diff --git a/arch/h8300/include/asm/io.h b/arch/h8300/include/asm/io.h index 33e842f3284b..c1a8df22080f 100644 --- a/arch/h8300/include/asm/io.h +++ b/arch/h8300/include/asm/io.h | |||
| @@ -25,7 +25,7 @@ | |||
| 25 | * memory location directly. | 25 | * memory location directly. |
| 26 | */ | 26 | */ |
| 27 | /* ++roman: The assignments to temp. vars avoid that gcc sometimes generates | 27 | /* ++roman: The assignments to temp. vars avoid that gcc sometimes generates |
| 28 | * two accesses to memory, which may be undesireable for some devices. | 28 | * two accesses to memory, which may be undesirable for some devices. |
| 29 | */ | 29 | */ |
| 30 | 30 | ||
| 31 | /* | 31 | /* |
diff --git a/arch/ia64/sn/kernel/setup.c b/arch/ia64/sn/kernel/setup.c index e456f062f241..d00dfc180021 100644 --- a/arch/ia64/sn/kernel/setup.c +++ b/arch/ia64/sn/kernel/setup.c | |||
| @@ -241,7 +241,7 @@ static void __cpuinit sn_check_for_wars(void) | |||
| 241 | * Note: This stuff is duped here because Altix requires the PCDP to | 241 | * Note: This stuff is duped here because Altix requires the PCDP to |
| 242 | * locate a usable VGA device due to lack of proper ACPI support. Structures | 242 | * locate a usable VGA device due to lack of proper ACPI support. Structures |
| 243 | * could be used from drivers/firmware/pcdp.h, but it was decided that moving | 243 | * could be used from drivers/firmware/pcdp.h, but it was decided that moving |
| 244 | * this file to a more public location just for Altix use was undesireable. | 244 | * this file to a more public location just for Altix use was undesirable. |
| 245 | */ | 245 | */ |
| 246 | 246 | ||
| 247 | struct hcdp_uart_desc { | 247 | struct hcdp_uart_desc { |
diff --git a/arch/m68k/atari/atakeyb.c b/arch/m68k/atari/atakeyb.c index 4add96d13b19..5890897d28bf 100644 --- a/arch/m68k/atari/atakeyb.c +++ b/arch/m68k/atari/atakeyb.c | |||
| @@ -121,7 +121,7 @@ KEYBOARD_STATE kb_state; | |||
| 121 | * bytes have been lost and in which state of the packet structure we are now. | 121 | * bytes have been lost and in which state of the packet structure we are now. |
| 122 | * This usually causes keyboards bytes to be interpreted as mouse movements | 122 | * This usually causes keyboards bytes to be interpreted as mouse movements |
| 123 | * and vice versa, which is very annoying. It seems better to throw away some | 123 | * and vice versa, which is very annoying. It seems better to throw away some |
| 124 | * bytes (that are usually mouse bytes) than to misinterpret them. Therefor I | 124 | * bytes (that are usually mouse bytes) than to misinterpret them. Therefore I |
| 125 | * introduced the RESYNC state for IKBD data. In this state, the bytes up to | 125 | * introduced the RESYNC state for IKBD data. In this state, the bytes up to |
| 126 | * one that really looks like a key event (0x04..0xf2) or the start of a mouse | 126 | * one that really looks like a key event (0x04..0xf2) or the start of a mouse |
| 127 | * packet (0xf8..0xfb) are thrown away, but at most 2 bytes. This at least | 127 | * packet (0xf8..0xfb) are thrown away, but at most 2 bytes. This at least |
diff --git a/arch/m68k/include/asm/fbio.h b/arch/m68k/include/asm/fbio.h index b9215a0907d3..0a21da87f7d6 100644 --- a/arch/m68k/include/asm/fbio.h +++ b/arch/m68k/include/asm/fbio.h | |||
| @@ -173,7 +173,7 @@ struct mdi_cfginfo { | |||
| 173 | int mdi_ncluts; /* Number of implemented CLUTs in this MDI */ | 173 | int mdi_ncluts; /* Number of implemented CLUTs in this MDI */ |
| 174 | int mdi_type; /* FBTYPE name */ | 174 | int mdi_type; /* FBTYPE name */ |
| 175 | int mdi_height; /* height */ | 175 | int mdi_height; /* height */ |
| 176 | int mdi_width; /* widht */ | 176 | int mdi_width; /* width */ |
| 177 | int mdi_size; /* available ram */ | 177 | int mdi_size; /* available ram */ |
| 178 | int mdi_mode; /* 8bpp, 16bpp or 32bpp */ | 178 | int mdi_mode; /* 8bpp, 16bpp or 32bpp */ |
| 179 | int mdi_pixfreq; /* pixel clock (from PROM) */ | 179 | int mdi_pixfreq; /* pixel clock (from PROM) */ |
diff --git a/arch/m68k/include/asm/io_no.h b/arch/m68k/include/asm/io_no.h index 359065d5a9f2..6e2413e518cb 100644 --- a/arch/m68k/include/asm/io_no.h +++ b/arch/m68k/include/asm/io_no.h | |||
| @@ -16,7 +16,7 @@ | |||
| 16 | * memory location directly. | 16 | * memory location directly. |
| 17 | */ | 17 | */ |
| 18 | /* ++roman: The assignments to temp. vars avoid that gcc sometimes generates | 18 | /* ++roman: The assignments to temp. vars avoid that gcc sometimes generates |
| 19 | * two accesses to memory, which may be undesireable for some devices. | 19 | * two accesses to memory, which may be undesirable for some devices. |
| 20 | */ | 20 | */ |
| 21 | 21 | ||
| 22 | /* | 22 | /* |
diff --git a/arch/powerpc/boot/dts/kmeter1.dts b/arch/powerpc/boot/dts/kmeter1.dts index 65b8b4f27efe..d8b5d12fb663 100644 --- a/arch/powerpc/boot/dts/kmeter1.dts +++ b/arch/powerpc/boot/dts/kmeter1.dts | |||
| @@ -490,7 +490,7 @@ | |||
| 490 | compatible = "cfi-flash"; | 490 | compatible = "cfi-flash"; |
| 491 | /* | 491 | /* |
| 492 | * The Intel P30 chip has 2 non-identical chips on | 492 | * The Intel P30 chip has 2 non-identical chips on |
| 493 | * one die, so we need to define 2 seperate regions | 493 | * one die, so we need to define 2 separate regions |
| 494 | * that are scanned by physmap_of independantly. | 494 | * that are scanned by physmap_of independantly. |
| 495 | */ | 495 | */ |
| 496 | reg = <0 0x00000000 0x02000000 | 496 | reg = <0 0x00000000 0x02000000 |
diff --git a/arch/powerpc/kernel/legacy_serial.c b/arch/powerpc/kernel/legacy_serial.c index 9ddfaef1a184..035ada5443ee 100644 --- a/arch/powerpc/kernel/legacy_serial.c +++ b/arch/powerpc/kernel/legacy_serial.c | |||
| @@ -469,7 +469,7 @@ static int __init serial_dev_init(void) | |||
| 469 | return -ENODEV; | 469 | return -ENODEV; |
| 470 | 470 | ||
| 471 | /* | 471 | /* |
| 472 | * Before we register the platfrom serial devices, we need | 472 | * Before we register the platform serial devices, we need |
| 473 | * to fixup their interrupts and their IO ports. | 473 | * to fixup their interrupts and their IO ports. |
| 474 | */ | 474 | */ |
| 475 | DBG("Fixing serial ports interrupts and IO ports ...\n"); | 475 | DBG("Fixing serial ports interrupts and IO ports ...\n"); |
diff --git a/arch/powerpc/mm/init_32.c b/arch/powerpc/mm/init_32.c index 4ec900af332f..b1dbd9ee87cc 100644 --- a/arch/powerpc/mm/init_32.c +++ b/arch/powerpc/mm/init_32.c | |||
| @@ -47,7 +47,7 @@ | |||
| 47 | #include "mmu_decl.h" | 47 | #include "mmu_decl.h" |
| 48 | 48 | ||
| 49 | #if defined(CONFIG_KERNEL_START_BOOL) || defined(CONFIG_LOWMEM_SIZE_BOOL) | 49 | #if defined(CONFIG_KERNEL_START_BOOL) || defined(CONFIG_LOWMEM_SIZE_BOOL) |
| 50 | /* The ammount of lowmem must be within 0xF0000000 - KERNELBASE. */ | 50 | /* The amount of lowmem must be within 0xF0000000 - KERNELBASE. */ |
| 51 | #if (CONFIG_LOWMEM_SIZE > (0xF0000000 - PAGE_OFFSET)) | 51 | #if (CONFIG_LOWMEM_SIZE > (0xF0000000 - PAGE_OFFSET)) |
| 52 | #error "You must adjust CONFIG_LOWMEM_SIZE or CONFIG_START_KERNEL" | 52 | #error "You must adjust CONFIG_LOWMEM_SIZE or CONFIG_START_KERNEL" |
| 53 | #endif | 53 | #endif |
diff --git a/arch/s390/crypto/sha_common.c b/arch/s390/crypto/sha_common.c index 7903ec47e6b9..f42dbabc0d30 100644 --- a/arch/s390/crypto/sha_common.c +++ b/arch/s390/crypto/sha_common.c | |||
| @@ -79,7 +79,7 @@ int s390_sha_final(struct shash_desc *desc, u8 *out) | |||
| 79 | memset(ctx->buf + index, 0x00, end - index - 8); | 79 | memset(ctx->buf + index, 0x00, end - index - 8); |
| 80 | 80 | ||
| 81 | /* | 81 | /* |
| 82 | * Append message length. Well, SHA-512 wants a 128 bit lenght value, | 82 | * Append message length. Well, SHA-512 wants a 128 bit length value, |
| 83 | * nevertheless we use u64, should be enough for now... | 83 | * nevertheless we use u64, should be enough for now... |
| 84 | */ | 84 | */ |
| 85 | bits = ctx->count * 8; | 85 | bits = ctx->count * 8; |
diff --git a/arch/s390/include/asm/cio.h b/arch/s390/include/asm/cio.h index e85679af54dd..e34347d567a6 100644 --- a/arch/s390/include/asm/cio.h +++ b/arch/s390/include/asm/cio.h | |||
| @@ -20,7 +20,7 @@ | |||
| 20 | /** | 20 | /** |
| 21 | * struct ccw1 - channel command word | 21 | * struct ccw1 - channel command word |
| 22 | * @cmd_code: command code | 22 | * @cmd_code: command code |
| 23 | * @flags: flags, like IDA adressing, etc. | 23 | * @flags: flags, like IDA addressing, etc. |
| 24 | * @count: byte count | 24 | * @count: byte count |
| 25 | * @cda: data address | 25 | * @cda: data address |
| 26 | * | 26 | * |
diff --git a/arch/s390/kernel/sclp.S b/arch/s390/kernel/sclp.S index 27af3bf3a009..2e82fdd89320 100644 --- a/arch/s390/kernel/sclp.S +++ b/arch/s390/kernel/sclp.S | |||
| @@ -235,7 +235,7 @@ _sclp_print: | |||
| 235 | lh %r9,0(%r8) # update sccb length | 235 | lh %r9,0(%r8) # update sccb length |
| 236 | ar %r9,%r6 | 236 | ar %r9,%r6 |
| 237 | sth %r9,0(%r8) | 237 | sth %r9,0(%r8) |
| 238 | ar %r7,%r6 # update current mto adress | 238 | ar %r7,%r6 # update current mto address |
| 239 | ltr %r0,%r0 # more characters? | 239 | ltr %r0,%r0 # more characters? |
| 240 | jnz .LinitmtoS4 | 240 | jnz .LinitmtoS4 |
| 241 | l %r2,.LwritedataS4-.LbaseS4(%r13)# write data | 241 | l %r2,.LwritedataS4-.LbaseS4(%r13)# write data |
diff --git a/arch/sh/kernel/cpu/clock.c b/arch/sh/kernel/cpu/clock.c index 83da5debeedf..e9fa1bfed53e 100644 --- a/arch/sh/kernel/cpu/clock.c +++ b/arch/sh/kernel/cpu/clock.c | |||
| @@ -404,7 +404,7 @@ EXPORT_SYMBOL_GPL(clk_round_rate); | |||
| 404 | * If an entry has a device ID, it must match | 404 | * If an entry has a device ID, it must match |
| 405 | * If an entry has a connection ID, it must match | 405 | * If an entry has a connection ID, it must match |
| 406 | * Then we take the most specific entry - with the following | 406 | * Then we take the most specific entry - with the following |
| 407 | * order of precidence: dev+con > dev only > con only. | 407 | * order of precedence: dev+con > dev only > con only. |
| 408 | */ | 408 | */ |
| 409 | static struct clk *clk_find(const char *dev_id, const char *con_id) | 409 | static struct clk *clk_find(const char *dev_id, const char *con_id) |
| 410 | { | 410 | { |
diff --git a/arch/sparc/include/asm/fbio.h b/arch/sparc/include/asm/fbio.h index b9215a0907d3..0a21da87f7d6 100644 --- a/arch/sparc/include/asm/fbio.h +++ b/arch/sparc/include/asm/fbio.h | |||
| @@ -173,7 +173,7 @@ struct mdi_cfginfo { | |||
| 173 | int mdi_ncluts; /* Number of implemented CLUTs in this MDI */ | 173 | int mdi_ncluts; /* Number of implemented CLUTs in this MDI */ |
| 174 | int mdi_type; /* FBTYPE name */ | 174 | int mdi_type; /* FBTYPE name */ |
| 175 | int mdi_height; /* height */ | 175 | int mdi_height; /* height */ |
| 176 | int mdi_width; /* widht */ | 176 | int mdi_width; /* width */ |
| 177 | int mdi_size; /* available ram */ | 177 | int mdi_size; /* available ram */ |
| 178 | int mdi_mode; /* 8bpp, 16bpp or 32bpp */ | 178 | int mdi_mode; /* 8bpp, 16bpp or 32bpp */ |
| 179 | int mdi_pixfreq; /* pixel clock (from PROM) */ | 179 | int mdi_pixfreq; /* pixel clock (from PROM) */ |
diff --git a/arch/sparc/kernel/perf_event.c b/arch/sparc/kernel/perf_event.c index 9f2b2bac8b2b..b867ab3353b4 100644 --- a/arch/sparc/kernel/perf_event.c +++ b/arch/sparc/kernel/perf_event.c | |||
| @@ -1353,7 +1353,7 @@ static void perf_callchain_user_32(struct pt_regs *regs, | |||
| 1353 | } | 1353 | } |
| 1354 | 1354 | ||
| 1355 | /* Like powerpc we can't get PMU interrupts within the PMU handler, | 1355 | /* Like powerpc we can't get PMU interrupts within the PMU handler, |
| 1356 | * so no need for seperate NMI and IRQ chains as on x86. | 1356 | * so no need for separate NMI and IRQ chains as on x86. |
| 1357 | */ | 1357 | */ |
| 1358 | static DEFINE_PER_CPU(struct perf_callchain_entry, callchain); | 1358 | static DEFINE_PER_CPU(struct perf_callchain_entry, callchain); |
| 1359 | 1359 | ||
diff --git a/arch/x86/crypto/twofish-i586-asm_32.S b/arch/x86/crypto/twofish-i586-asm_32.S index 39b98ed2c1b9..575331cb2a8a 100644 --- a/arch/x86/crypto/twofish-i586-asm_32.S +++ b/arch/x86/crypto/twofish-i586-asm_32.S | |||
| @@ -22,7 +22,7 @@ | |||
| 22 | 22 | ||
| 23 | #include <asm/asm-offsets.h> | 23 | #include <asm/asm-offsets.h> |
| 24 | 24 | ||
| 25 | /* return adress at 0 */ | 25 | /* return address at 0 */ |
| 26 | 26 | ||
| 27 | #define in_blk 12 /* input byte array address parameter*/ | 27 | #define in_blk 12 /* input byte array address parameter*/ |
| 28 | #define out_blk 8 /* output byte array address parameter*/ | 28 | #define out_blk 8 /* output byte array address parameter*/ |
| @@ -230,8 +230,8 @@ twofish_enc_blk: | |||
| 230 | push %edi | 230 | push %edi |
| 231 | 231 | ||
| 232 | mov tfm + 16(%esp), %ebp /* abuse the base pointer: set new base bointer to the crypto tfm */ | 232 | mov tfm + 16(%esp), %ebp /* abuse the base pointer: set new base bointer to the crypto tfm */ |
| 233 | add $crypto_tfm_ctx_offset, %ebp /* ctx adress */ | 233 | add $crypto_tfm_ctx_offset, %ebp /* ctx address */ |
| 234 | mov in_blk+16(%esp),%edi /* input adress in edi */ | 234 | mov in_blk+16(%esp),%edi /* input address in edi */ |
| 235 | 235 | ||
| 236 | mov (%edi), %eax | 236 | mov (%edi), %eax |
| 237 | mov b_offset(%edi), %ebx | 237 | mov b_offset(%edi), %ebx |
| @@ -286,8 +286,8 @@ twofish_dec_blk: | |||
| 286 | 286 | ||
| 287 | 287 | ||
| 288 | mov tfm + 16(%esp), %ebp /* abuse the base pointer: set new base bointer to the crypto tfm */ | 288 | mov tfm + 16(%esp), %ebp /* abuse the base pointer: set new base bointer to the crypto tfm */ |
| 289 | add $crypto_tfm_ctx_offset, %ebp /* ctx adress */ | 289 | add $crypto_tfm_ctx_offset, %ebp /* ctx address */ |
| 290 | mov in_blk+16(%esp),%edi /* input adress in edi */ | 290 | mov in_blk+16(%esp),%edi /* input address in edi */ |
| 291 | 291 | ||
| 292 | mov (%edi), %eax | 292 | mov (%edi), %eax |
| 293 | mov b_offset(%edi), %ebx | 293 | mov b_offset(%edi), %ebx |
diff --git a/arch/x86/crypto/twofish-x86_64-asm_64.S b/arch/x86/crypto/twofish-x86_64-asm_64.S index 35974a586615..573aa102542e 100644 --- a/arch/x86/crypto/twofish-x86_64-asm_64.S +++ b/arch/x86/crypto/twofish-x86_64-asm_64.S | |||
| @@ -221,11 +221,11 @@ | |||
| 221 | twofish_enc_blk: | 221 | twofish_enc_blk: |
| 222 | pushq R1 | 222 | pushq R1 |
| 223 | 223 | ||
| 224 | /* %rdi contains the crypto tfm adress */ | 224 | /* %rdi contains the crypto tfm address */ |
| 225 | /* %rsi contains the output adress */ | 225 | /* %rsi contains the output address */ |
| 226 | /* %rdx contains the input adress */ | 226 | /* %rdx contains the input address */ |
| 227 | add $crypto_tfm_ctx_offset, %rdi /* set ctx adress */ | 227 | add $crypto_tfm_ctx_offset, %rdi /* set ctx address */ |
| 228 | /* ctx adress is moved to free one non-rex register | 228 | /* ctx address is moved to free one non-rex register |
| 229 | as target for the 8bit high operations */ | 229 | as target for the 8bit high operations */ |
| 230 | mov %rdi, %r11 | 230 | mov %rdi, %r11 |
| 231 | 231 | ||
| @@ -274,11 +274,11 @@ twofish_enc_blk: | |||
| 274 | twofish_dec_blk: | 274 | twofish_dec_blk: |
| 275 | pushq R1 | 275 | pushq R1 |
| 276 | 276 | ||
| 277 | /* %rdi contains the crypto tfm adress */ | 277 | /* %rdi contains the crypto tfm address */ |
| 278 | /* %rsi contains the output adress */ | 278 | /* %rsi contains the output address */ |
| 279 | /* %rdx contains the input adress */ | 279 | /* %rdx contains the input address */ |
| 280 | add $crypto_tfm_ctx_offset, %rdi /* set ctx adress */ | 280 | add $crypto_tfm_ctx_offset, %rdi /* set ctx address */ |
| 281 | /* ctx adress is moved to free one non-rex register | 281 | /* ctx address is moved to free one non-rex register |
| 282 | as target for the 8bit high operations */ | 282 | as target for the 8bit high operations */ |
| 283 | mov %rdi, %r11 | 283 | mov %rdi, %r11 |
| 284 | 284 | ||
diff --git a/arch/x86/kernel/apic/apic_flat_64.c b/arch/x86/kernel/apic/apic_flat_64.c index e3c3d820c325..09d3b17ce0c2 100644 --- a/arch/x86/kernel/apic/apic_flat_64.c +++ b/arch/x86/kernel/apic/apic_flat_64.c | |||
| @@ -223,7 +223,7 @@ struct apic apic_flat = { | |||
| 223 | }; | 223 | }; |
| 224 | 224 | ||
| 225 | /* | 225 | /* |
| 226 | * Physflat mode is used when there are more than 8 CPUs on a AMD system. | 226 | * Physflat mode is used when there are more than 8 CPUs on a system. |
| 227 | * We cannot use logical delivery in this case because the mask | 227 | * We cannot use logical delivery in this case because the mask |
| 228 | * overflows, so use physical mode. | 228 | * overflows, so use physical mode. |
| 229 | */ | 229 | */ |
diff --git a/arch/x86/kernel/head_64.S b/arch/x86/kernel/head_64.S index 2d8b5035371c..3d1e6f16b7a6 100644 --- a/arch/x86/kernel/head_64.S +++ b/arch/x86/kernel/head_64.S | |||
| @@ -27,7 +27,7 @@ | |||
| 27 | #define GET_CR2_INTO_RCX movq %cr2, %rcx | 27 | #define GET_CR2_INTO_RCX movq %cr2, %rcx |
| 28 | #endif | 28 | #endif |
| 29 | 29 | ||
| 30 | /* we are not able to switch in one step to the final KERNEL ADRESS SPACE | 30 | /* we are not able to switch in one step to the final KERNEL ADDRESS SPACE |
| 31 | * because we need identity-mapped pages. | 31 | * because we need identity-mapped pages. |
| 32 | * | 32 | * |
| 33 | */ | 33 | */ |
diff --git a/arch/x86/kernel/pci-calgary_64.c b/arch/x86/kernel/pci-calgary_64.c index 2bbde6078143..fb99f7edb341 100644 --- a/arch/x86/kernel/pci-calgary_64.c +++ b/arch/x86/kernel/pci-calgary_64.c | |||
| @@ -1309,7 +1309,7 @@ static void calgary_init_bitmap_from_tce_table(struct iommu_table *tbl) | |||
| 1309 | /* | 1309 | /* |
| 1310 | * get_tce_space_from_tar(): | 1310 | * get_tce_space_from_tar(): |
| 1311 | * Function for kdump case. Get the tce tables from first kernel | 1311 | * Function for kdump case. Get the tce tables from first kernel |
| 1312 | * by reading the contents of the base adress register of calgary iommu | 1312 | * by reading the contents of the base address register of calgary iommu |
| 1313 | */ | 1313 | */ |
| 1314 | static void __init get_tce_space_from_tar(void) | 1314 | static void __init get_tce_space_from_tar(void) |
| 1315 | { | 1315 | { |
diff --git a/arch/x86/kernel/pci-dma.c b/arch/x86/kernel/pci-dma.c index 1aa966c565f9..a4ac764a6880 100644 --- a/arch/x86/kernel/pci-dma.c +++ b/arch/x86/kernel/pci-dma.c | |||
| @@ -38,7 +38,7 @@ int iommu_detected __read_mostly = 0; | |||
| 38 | * This variable becomes 1 if iommu=pt is passed on the kernel command line. | 38 | * This variable becomes 1 if iommu=pt is passed on the kernel command line. |
| 39 | * If this variable is 1, IOMMU implementations do no DMA translation for | 39 | * If this variable is 1, IOMMU implementations do no DMA translation for |
| 40 | * devices and allow every device to access to whole physical memory. This is | 40 | * devices and allow every device to access to whole physical memory. This is |
| 41 | * useful if a user want to use an IOMMU only for KVM device assignment to | 41 | * useful if a user wants to use an IOMMU only for KVM device assignment to |
| 42 | * guests and not for driver dma translation. | 42 | * guests and not for driver dma translation. |
| 43 | */ | 43 | */ |
| 44 | int iommu_pass_through __read_mostly; | 44 | int iommu_pass_through __read_mostly; |
diff --git a/arch/x86/kernel/ptrace.c b/arch/x86/kernel/ptrace.c index 2d96aab82a48..a503b1fd04e5 100644 --- a/arch/x86/kernel/ptrace.c +++ b/arch/x86/kernel/ptrace.c | |||
| @@ -581,7 +581,7 @@ ptrace_modify_breakpoint(struct perf_event *bp, int len, int type, | |||
| 581 | struct perf_event_attr attr; | 581 | struct perf_event_attr attr; |
| 582 | 582 | ||
| 583 | /* | 583 | /* |
| 584 | * We shoud have at least an inactive breakpoint at this | 584 | * We should have at least an inactive breakpoint at this |
| 585 | * slot. It means the user is writing dr7 without having | 585 | * slot. It means the user is writing dr7 without having |
| 586 | * written the address register first | 586 | * written the address register first |
| 587 | */ | 587 | */ |
diff --git a/arch/x86/kernel/tsc.c b/arch/x86/kernel/tsc.c index 208a857c679f..9faf91ae1841 100644 --- a/arch/x86/kernel/tsc.c +++ b/arch/x86/kernel/tsc.c | |||
| @@ -50,7 +50,7 @@ u64 native_sched_clock(void) | |||
| 50 | * unstable. We do this because unlike Time Of Day, | 50 | * unstable. We do this because unlike Time Of Day, |
| 51 | * the scheduler clock tolerates small errors and it's | 51 | * the scheduler clock tolerates small errors and it's |
| 52 | * very important for it to be as fast as the platform | 52 | * very important for it to be as fast as the platform |
| 53 | * can achive it. ) | 53 | * can achieve it. ) |
| 54 | */ | 54 | */ |
| 55 | if (unlikely(tsc_disabled)) { | 55 | if (unlikely(tsc_disabled)) { |
| 56 | /* No locking but a rare wrong value is not a big deal: */ | 56 | /* No locking but a rare wrong value is not a big deal: */ |
diff --git a/arch/x86/kernel/vmiclock_32.c b/arch/x86/kernel/vmiclock_32.c index 2f1ca5614292..5e1ff66ecd73 100644 --- a/arch/x86/kernel/vmiclock_32.c +++ b/arch/x86/kernel/vmiclock_32.c | |||
| @@ -167,7 +167,7 @@ static int vmi_timer_next_event(unsigned long delta, | |||
| 167 | { | 167 | { |
| 168 | /* Unfortunately, set_next_event interface only passes relative | 168 | /* Unfortunately, set_next_event interface only passes relative |
| 169 | * expiry, but we want absolute expiry. It'd be better if were | 169 | * expiry, but we want absolute expiry. It'd be better if were |
| 170 | * were passed an aboslute expiry, since a bunch of time may | 170 | * were passed an absolute expiry, since a bunch of time may |
| 171 | * have been stolen between the time the delta is computed and | 171 | * have been stolen between the time the delta is computed and |
| 172 | * when we set the alarm below. */ | 172 | * when we set the alarm below. */ |
| 173 | cycle_t now = vmi_timer_ops.get_cycle_counter(vmi_counter(VMI_ONESHOT)); | 173 | cycle_t now = vmi_timer_ops.get_cycle_counter(vmi_counter(VMI_ONESHOT)); |
diff --git a/arch/x86/xen/smp.c b/arch/x86/xen/smp.c index 563d20504988..deafb65ef44e 100644 --- a/arch/x86/xen/smp.c +++ b/arch/x86/xen/smp.c | |||
| @@ -361,7 +361,7 @@ static void xen_cpu_die(unsigned int cpu) | |||
| 361 | alternatives_smp_switch(0); | 361 | alternatives_smp_switch(0); |
| 362 | } | 362 | } |
| 363 | 363 | ||
| 364 | static void __cpuinit xen_play_dead(void) /* used only with CPU_HOTPLUG */ | 364 | static void __cpuinit xen_play_dead(void) /* used only with HOTPLUG_CPU */ |
| 365 | { | 365 | { |
| 366 | play_dead_common(); | 366 | play_dead_common(); |
| 367 | HYPERVISOR_vcpu_op(VCPUOP_down, smp_processor_id(), NULL); | 367 | HYPERVISOR_vcpu_op(VCPUOP_down, smp_processor_id(), NULL); |
diff --git a/arch/xtensa/kernel/entry.S b/arch/xtensa/kernel/entry.S index 80d24c485fd3..77fc9f6dc016 100644 --- a/arch/xtensa/kernel/entry.S +++ b/arch/xtensa/kernel/entry.S | |||
| @@ -104,7 +104,7 @@ | |||
| 104 | * excsave has been restored, and | 104 | * excsave has been restored, and |
| 105 | * stack pointer (a1) has been set. | 105 | * stack pointer (a1) has been set. |
| 106 | * | 106 | * |
| 107 | * Note: _user_exception might be at an odd adress. Don't use call0..call12 | 107 | * Note: _user_exception might be at an odd address. Don't use call0..call12 |
| 108 | */ | 108 | */ |
| 109 | 109 | ||
| 110 | ENTRY(user_exception) | 110 | ENTRY(user_exception) |
| @@ -244,7 +244,7 @@ _user_exception: | |||
| 244 | * excsave has been restored, and | 244 | * excsave has been restored, and |
| 245 | * stack pointer (a1) has been set. | 245 | * stack pointer (a1) has been set. |
| 246 | * | 246 | * |
| 247 | * Note: _kernel_exception might be at an odd adress. Don't use call0..call12 | 247 | * Note: _kernel_exception might be at an odd address. Don't use call0..call12 |
| 248 | */ | 248 | */ |
| 249 | 249 | ||
| 250 | ENTRY(kernel_exception) | 250 | ENTRY(kernel_exception) |
diff --git a/block/bsg.c b/block/bsg.c index a9fd2d84b53a..46597a6bd112 100644 --- a/block/bsg.c +++ b/block/bsg.c | |||
| @@ -260,7 +260,7 @@ bsg_map_hdr(struct bsg_device *bd, struct sg_io_v4 *hdr, fmode_t has_write_perm, | |||
| 260 | return ERR_PTR(ret); | 260 | return ERR_PTR(ret); |
| 261 | 261 | ||
| 262 | /* | 262 | /* |
| 263 | * map scatter-gather elements seperately and string them to request | 263 | * map scatter-gather elements separately and string them to request |
| 264 | */ | 264 | */ |
| 265 | rq = blk_get_request(q, rw, GFP_KERNEL); | 265 | rq = blk_get_request(q, rw, GFP_KERNEL); |
| 266 | if (!rq) | 266 | if (!rq) |
diff --git a/crypto/Kconfig b/crypto/Kconfig index 6a2e295ee227..403857ad06d4 100644 --- a/crypto/Kconfig +++ b/crypto/Kconfig | |||
| @@ -826,8 +826,8 @@ config CRYPTO_ANSI_CPRNG | |||
| 826 | help | 826 | help |
| 827 | This option enables the generic pseudo random number generator | 827 | This option enables the generic pseudo random number generator |
| 828 | for cryptographic modules. Uses the Algorithm specified in | 828 | for cryptographic modules. Uses the Algorithm specified in |
| 829 | ANSI X9.31 A.2.4. Not this option must be enabled if CRYPTO_FIPS | 829 | ANSI X9.31 A.2.4. Note that this option must be enabled if |
| 830 | is selected | 830 | CRYPTO_FIPS is selected |
| 831 | 831 | ||
| 832 | source "drivers/crypto/Kconfig" | 832 | source "drivers/crypto/Kconfig" |
| 833 | 833 | ||
diff --git a/drivers/acpi/dock.c b/drivers/acpi/dock.c index b2586f57e1f5..d9a85f1ddde6 100644 --- a/drivers/acpi/dock.c +++ b/drivers/acpi/dock.c | |||
| @@ -605,7 +605,7 @@ register_hotplug_dock_device(acpi_handle handle, struct acpi_dock_ops *ops, | |||
| 605 | list_for_each_entry(dock_station, &dock_stations, sibling) { | 605 | list_for_each_entry(dock_station, &dock_stations, sibling) { |
| 606 | /* | 606 | /* |
| 607 | * An ATA bay can be in a dock and itself can be ejected | 607 | * An ATA bay can be in a dock and itself can be ejected |
| 608 | * seperately, so there are two 'dock stations' which need the | 608 | * separately, so there are two 'dock stations' which need the |
| 609 | * ops | 609 | * ops |
| 610 | */ | 610 | */ |
| 611 | dd = find_dock_dependent_device(dock_station, handle); | 611 | dd = find_dock_dependent_device(dock_station, handle); |
diff --git a/drivers/acpi/proc.c b/drivers/acpi/proc.c index d0d25e2e1ced..1ac678d2c51c 100644 --- a/drivers/acpi/proc.c +++ b/drivers/acpi/proc.c | |||
| @@ -435,7 +435,7 @@ acpi_system_write_wakeup_device(struct file *file, | |||
| 435 | found_dev->wakeup.gpe_device)) { | 435 | found_dev->wakeup.gpe_device)) { |
| 436 | printk(KERN_WARNING | 436 | printk(KERN_WARNING |
| 437 | "ACPI: '%s' and '%s' have the same GPE, " | 437 | "ACPI: '%s' and '%s' have the same GPE, " |
| 438 | "can't disable/enable one seperately\n", | 438 | "can't disable/enable one separately\n", |
| 439 | dev->pnp.bus_id, found_dev->pnp.bus_id); | 439 | dev->pnp.bus_id, found_dev->pnp.bus_id); |
| 440 | dev->wakeup.state.enabled = | 440 | dev->wakeup.state.enabled = |
| 441 | found_dev->wakeup.state.enabled; | 441 | found_dev->wakeup.state.enabled; |
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index 9c77b0d1a9d0..4a28420efff2 100644 --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c | |||
| @@ -2232,7 +2232,7 @@ retry: | |||
| 2232 | * Some drives were very specific about that exact sequence. | 2232 | * Some drives were very specific about that exact sequence. |
| 2233 | * | 2233 | * |
| 2234 | * Note that ATA4 says lba is mandatory so the second check | 2234 | * Note that ATA4 says lba is mandatory so the second check |
| 2235 | * shoud never trigger. | 2235 | * should never trigger. |
| 2236 | */ | 2236 | */ |
| 2237 | if (ata_id_major_version(id) < 4 || !ata_id_has_lba(id)) { | 2237 | if (ata_id_major_version(id) < 4 || !ata_id_has_lba(id)) { |
| 2238 | err_mask = ata_dev_init_params(dev, id[3], id[6]); | 2238 | err_mask = ata_dev_init_params(dev, id[3], id[6]); |
diff --git a/drivers/ata/libata-sff.c b/drivers/ata/libata-sff.c index 02441fd57e9e..561dec2481cb 100644 --- a/drivers/ata/libata-sff.c +++ b/drivers/ata/libata-sff.c | |||
| @@ -2287,7 +2287,7 @@ EXPORT_SYMBOL_GPL(ata_sff_postreset); | |||
| 2287 | * @qc: command | 2287 | * @qc: command |
| 2288 | * | 2288 | * |
| 2289 | * Drain the FIFO and device of any stuck data following a command | 2289 | * Drain the FIFO and device of any stuck data following a command |
| 2290 | * failing to complete. In some cases this is neccessary before a | 2290 | * failing to complete. In some cases this is necessary before a |
| 2291 | * reset will recover the device. | 2291 | * reset will recover the device. |
| 2292 | * | 2292 | * |
| 2293 | */ | 2293 | */ |
diff --git a/drivers/ata/pata_acpi.c b/drivers/ata/pata_acpi.c index 294f3020a78a..8e5e13210426 100644 --- a/drivers/ata/pata_acpi.c +++ b/drivers/ata/pata_acpi.c | |||
| @@ -161,7 +161,7 @@ static void pacpi_set_dmamode(struct ata_port *ap, struct ata_device *adev) | |||
| 161 | * | 161 | * |
| 162 | * Called when the libata layer is about to issue a command. We wrap | 162 | * Called when the libata layer is about to issue a command. We wrap |
| 163 | * this interface so that we can load the correct ATA timings if | 163 | * this interface so that we can load the correct ATA timings if |
| 164 | * neccessary. | 164 | * necessary. |
| 165 | */ | 165 | */ |
| 166 | 166 | ||
| 167 | static unsigned int pacpi_qc_issue(struct ata_queued_cmd *qc) | 167 | static unsigned int pacpi_qc_issue(struct ata_queued_cmd *qc) |
diff --git a/drivers/ata/pata_hpt3x3.c b/drivers/ata/pata_hpt3x3.c index c86c71639a95..727a81ce4c9f 100644 --- a/drivers/ata/pata_hpt3x3.c +++ b/drivers/ata/pata_hpt3x3.c | |||
| @@ -180,7 +180,7 @@ static void hpt3x3_init_chipset(struct pci_dev *dev) | |||
| 180 | * @id: Entry in match table | 180 | * @id: Entry in match table |
| 181 | * | 181 | * |
| 182 | * Perform basic initialisation. We set the device up so we access all | 182 | * Perform basic initialisation. We set the device up so we access all |
| 183 | * ports via BAR4. This is neccessary to work around errata. | 183 | * ports via BAR4. This is necessary to work around errata. |
| 184 | */ | 184 | */ |
| 185 | 185 | ||
| 186 | static int hpt3x3_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | 186 | static int hpt3x3_init_one(struct pci_dev *pdev, const struct pci_device_id *id) |
diff --git a/drivers/ata/pata_pcmcia.c b/drivers/ata/pata_pcmcia.c index 36103531feeb..147de2fd66d2 100644 --- a/drivers/ata/pata_pcmcia.c +++ b/drivers/ata/pata_pcmcia.c | |||
| @@ -131,7 +131,7 @@ static unsigned int ata_data_xfer_8bit(struct ata_device *dev, | |||
| 131 | * @qc: command | 131 | * @qc: command |
| 132 | * | 132 | * |
| 133 | * Drain the FIFO and device of any stuck data following a command | 133 | * Drain the FIFO and device of any stuck data following a command |
| 134 | * failing to complete. In some cases this is neccessary before a | 134 | * failing to complete. In some cases this is necessary before a |
| 135 | * reset will recover the device. | 135 | * reset will recover the device. |
| 136 | * | 136 | * |
| 137 | */ | 137 | */ |
diff --git a/drivers/block/drbd/drbd_int.h b/drivers/block/drbd/drbd_int.h index 2bf3a6ef3684..d9301e861d9f 100644 --- a/drivers/block/drbd/drbd_int.h +++ b/drivers/block/drbd/drbd_int.h | |||
| @@ -95,7 +95,7 @@ extern char usermode_helper[]; | |||
| 95 | 95 | ||
| 96 | /* All EEs on the free list should have ID_VACANT (== 0) | 96 | /* All EEs on the free list should have ID_VACANT (== 0) |
| 97 | * freshly allocated EEs get !ID_VACANT (== 1) | 97 | * freshly allocated EEs get !ID_VACANT (== 1) |
| 98 | * so if it says "cannot dereference null pointer at adress 0x00000001", | 98 | * so if it says "cannot dereference null pointer at address 0x00000001", |
| 99 | * it is most likely one of these :( */ | 99 | * it is most likely one of these :( */ |
| 100 | 100 | ||
| 101 | #define ID_IN_SYNC (4711ULL) | 101 | #define ID_IN_SYNC (4711ULL) |
| @@ -1171,7 +1171,7 @@ extern int drbd_bitmap_io(struct drbd_conf *mdev, int (*io_fn)(struct drbd_conf | |||
| 1171 | /* Meta data layout | 1171 | /* Meta data layout |
| 1172 | We reserve a 128MB Block (4k aligned) | 1172 | We reserve a 128MB Block (4k aligned) |
| 1173 | * either at the end of the backing device | 1173 | * either at the end of the backing device |
| 1174 | * or on a seperate meta data device. */ | 1174 | * or on a separate meta data device. */ |
| 1175 | 1175 | ||
| 1176 | #define MD_RESERVED_SECT (128LU << 11) /* 128 MB, unit sectors */ | 1176 | #define MD_RESERVED_SECT (128LU << 11) /* 128 MB, unit sectors */ |
| 1177 | /* The following numbers are sectors */ | 1177 | /* The following numbers are sectors */ |
diff --git a/drivers/block/drbd/drbd_req.h b/drivers/block/drbd/drbd_req.h index f22c1bc8ec7e..16119d7056cc 100644 --- a/drivers/block/drbd/drbd_req.h +++ b/drivers/block/drbd/drbd_req.h | |||
| @@ -57,7 +57,7 @@ | |||
| 57 | * | 57 | * |
| 58 | * It may me handed over to the local disk subsystem. | 58 | * It may me handed over to the local disk subsystem. |
| 59 | * It may be completed by the local disk subsystem, | 59 | * It may be completed by the local disk subsystem, |
| 60 | * either sucessfully or with io-error. | 60 | * either successfully or with io-error. |
| 61 | * In case it is a READ request, and it failed locally, | 61 | * In case it is a READ request, and it failed locally, |
| 62 | * it may be retried remotely. | 62 | * it may be retried remotely. |
| 63 | * | 63 | * |
diff --git a/drivers/char/ChangeLog b/drivers/char/ChangeLog deleted file mode 100644 index 56b8a2e76ab1..000000000000 --- a/drivers/char/ChangeLog +++ /dev/null | |||
| @@ -1,775 +0,0 @@ | |||
| 1 | 2001-08-11 Tim Waugh <twaugh@redhat.com> | ||
| 2 | |||
| 3 | * serial.c (get_pci_port): Deal with awkward Titan cards. | ||
| 4 | |||
| 5 | 1998-08-26 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 6 | |||
| 7 | * serial.c (rs_open): Correctly decrement the module in-use count | ||
| 8 | on errors. | ||
| 9 | |||
| 10 | Thu Feb 19 14:24:08 1998 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 11 | |||
| 12 | * tty_io.c (tty_name): Remove the non-reentrant (and non-SMP safe) | ||
| 13 | version of tty_name, and rename the reentrant _tty_name | ||
| 14 | function to be tty_name. | ||
| 15 | (tty_open): Add a warning message stating callout devices | ||
| 16 | are deprecated. | ||
| 17 | |||
| 18 | Mon Dec 1 08:24:15 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 19 | |||
| 20 | * tty_io.c (tty_get_baud_rate): Print a warning syslog if the | ||
| 21 | tty->alt_speed kludge is used; this means the system is | ||
| 22 | using the deprecated SPD_HI ioctls. | ||
| 23 | |||
| 24 | Mon Nov 24 10:37:49 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 25 | |||
| 26 | * serial.c, esp.c, rocket.c: Change drivers to take advantage of | ||
| 27 | tty_get_baud_rate(). | ||
| 28 | |||
| 29 | * tty_io.c (tty_get_baud_rate): New function which computes the | ||
| 30 | correct baud rate for the tty. More factoring out of | ||
| 31 | common code out of the serial driver to the high-level tty | ||
| 32 | functions.... | ||
| 33 | |||
| 34 | Sat Nov 22 07:53:36 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 35 | |||
| 36 | * serial.c, esp.c, rocket.c: Add tty->driver.break() routine, and | ||
| 37 | allow high-level tty code to handle the break and soft | ||
| 38 | carrier ioctls. | ||
| 39 | |||
| 40 | * tty_ioctl.c (n_tty_ioctl): Support TIOCGSOFTCAR and | ||
| 41 | TIOCSSOFTCAR, so that device drivers don't have to support | ||
| 42 | it. | ||
| 43 | |||
| 44 | * serial.c (autoconfig): Change 16750 test to hopefully eliminate | ||
| 45 | false results by people with strange 16550As being | ||
| 46 | detected as 16750s. Hopefully 16750s will still be | ||
| 47 | detected as 16750, and other weird UARTs won't get poorly | ||
| 48 | autodetected. If this doesn't work, I'll have to disable | ||
| 49 | the auto identification for the 16750. | ||
| 50 | |||
| 51 | * tty_io.c (tty_hangup): Now actually do the tty hangup | ||
| 52 | processing during the timer processing, and disable | ||
| 53 | interrupts while doing the hangup processing. This avoids | ||
| 54 | several nasty race conditions which happened when the | ||
| 55 | hangup processing was done asynchronously. | ||
| 56 | (tty_ioctl): Do break handling in the tty driver if | ||
| 57 | driver's break function is supported. | ||
| 58 | (tty_flip_buffer_push): New exported function which should | ||
| 59 | be used by drivers to push characters in the flip buffer | ||
| 60 | to the tty handler. This may either be done using a task | ||
| 61 | queue function for better CPU efficiency, or directly for | ||
| 62 | low latency operation. | ||
| 63 | |||
| 64 | * serial.c (rs_set_termios): Fix bug rs_set_termios when | ||
| 65 | transitioning away from B0, submitted by Stanislav | ||
| 66 | Voronyi. | ||
| 67 | |||
| 68 | Thu Jun 19 20:05:58 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 69 | |||
| 70 | * serial.c (begin_break, end_break, rs_ioctl): Applied patch | ||
| 71 | to support BSD ioctls to set and clear the break | ||
| 72 | condition explicitly. | ||
| 73 | |||
| 74 | * console.c (scrup, scrdown, insert_line, delete_line): Applied | ||
| 75 | fix suggested by Aaron Tiensivu to speed up block scrolls | ||
| 76 | up and down. | ||
| 77 | |||
| 78 | * n_tty.c (opost_block, write_chan): Added a modified "fast | ||
| 79 | console" patch which processes a block of text via | ||
| 80 | "cooking" efficiently. | ||
| 81 | |||
| 82 | Wed Jun 18 15:25:50 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 83 | |||
| 84 | * tty_io.c (init_dev, release_dev): Applied fix suggested by Bill | ||
| 85 | Hawes to prevent race conditions in the tty code. | ||
| 86 | |||
| 87 | * n_tty.c (n_tty_chars_in_buffer): Applied fix suggested by Bill | ||
| 88 | Hawes so that n_tty_chars_in_buffer returns the correct | ||
| 89 | value in the case when the tty is in cannonical mode. (To | ||
| 90 | avoid a pty deadlock with telnetd.) | ||
| 91 | |||
| 92 | Thu Feb 27 01:53:08 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 93 | |||
| 94 | * serial.c (change_speed): Add support for the termios flag | ||
| 95 | CMSPAR, which allows the user to select stick parity. | ||
| 96 | (i.e, if PARODD is set, the parity bit is always 1; if | ||
| 97 | PARRODD is not set, then the parity bit is always 0). | ||
| 98 | |||
| 99 | Wed Feb 26 19:03:10 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 100 | |||
| 101 | * serial.c (cleanup_module): Fix memory leak when using the serial | ||
| 102 | driver as a module; make sure tmp_buf gets freed! | ||
| 103 | |||
| 104 | Tue Feb 25 11:01:59 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 105 | |||
| 106 | * serial.c (set_modem_info): Add support for setting and clearing | ||
| 107 | the OUT1 and OUT2 bits. (For special case UART's, usually | ||
| 108 | for half-duplex.) | ||
| 109 | (autoconfig, change_speed): Fix TI 16750 support. | ||
| 110 | |||
| 111 | Sun Feb 16 00:14:43 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 112 | |||
| 113 | * tty_io.c (release_dev): Add sanity check to make sure there are | ||
| 114 | no waiters on tty->read_wait or tty->write_wait. | ||
| 115 | |||
| 116 | * serial.c (rs_init): Don't autoconfig a device if the I/O region | ||
| 117 | is already reserved. | ||
| 118 | |||
| 119 | * serial.c (serial_proc_info): Add support for /proc/serial. | ||
| 120 | |||
| 121 | Thu Feb 13 00:49:10 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 122 | |||
| 123 | * serial.c (receive_chars): When the UART repotrs an overrun | ||
| 124 | condition, it does so with a valid character. Changed to | ||
| 125 | not throw away the valid character, but instead report the | ||
| 126 | overrun after the valid character. | ||
| 127 | |||
| 128 | * serial.c: Added new #ifdef's for some of the advanced serial | ||
| 129 | driver features. A minimal driver that only supports COM | ||
| 130 | 1/2/3/4 without sharing serial interrupts only takes 17k; | ||
| 131 | the full driver takes 32k. | ||
| 132 | |||
| 133 | Wed Feb 12 14:50:44 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 134 | |||
| 135 | * vt.c: | ||
| 136 | * pty.c: | ||
| 137 | * tty_ioctl.c: | ||
| 138 | * serial.c: Update routines to use the new 2.1 memory access | ||
| 139 | routines. | ||
| 140 | |||
| 141 | Wed Dec 4 07:51:52 1996 Theodore Ts'o <tytso@localhost.mit.edu> | ||
| 142 | |||
| 143 | * serial.c (change_speed): Use save_flags(); cli() and | ||
| 144 | restore_flags() in order to ensure we don't accidentally | ||
| 145 | turn on interrupts when starting up the port. | ||
| 146 | (startup): Move the insertion of serial structure into the | ||
| 147 | IRQ chain earlier into the startup processing. Interrupts | ||
| 148 | should be off this whole time, but we eventually will want | ||
| 149 | to reduce this window. | ||
| 150 | |||
| 151 | Thu Nov 21 10:05:22 1996 Theodore Ts'o <tytso@localhost.mit.edu> | ||
| 152 | |||
| 153 | * tty_ioctl.c (tty_wait_until_sent): Always check the driver | ||
| 154 | wait_until_ready routine, even if there are no characters | ||
| 155 | in the xmit buffer. (There may be charactes in the device | ||
| 156 | FIFO.) | ||
| 157 | (n_tty_ioctl): Add new flag tty->flow_stopped which | ||
| 158 | indicates whether the tty is stopped due to a request by | ||
| 159 | the TCXONC ioctl (used by tcflow). If so, don't let an | ||
| 160 | incoming XOFF character restart the tty. The tty can only | ||
| 161 | be restarted by another TCXONC request. | ||
| 162 | |||
| 163 | * tty_io.c (start_tty): Don't allow the tty to be restarted if | ||
| 164 | tty->flow_stopped is true. | ||
| 165 | |||
| 166 | * n_tty.c (n_tty_receive_char): If tty->flow_stopped is true, and | ||
| 167 | IXANY is set, don't eat a character trying to restart the | ||
| 168 | tty. | ||
| 169 | |||
| 170 | * serial.c (startup): Remove need for MCR_noint from the | ||
| 171 | async_struct structure. Only turn on DTR and RTS if the | ||
| 172 | baud rate is not zero. | ||
| 173 | (change_speed): More accurately calculate the timeout | ||
| 174 | value based on the word size. Move responsibility of | ||
| 175 | hangup when speed becomes B0 to rs_set_termios() | ||
| 176 | (set_serial_info): When changing the UART type set the | ||
| 177 | current xmit_fifo_size as well as the permanent | ||
| 178 | xmit_fifo_size. | ||
| 179 | (rs_ioctl): Fix TCSBRK (used by tcdrain) and TCSBRKP | ||
| 180 | ioctls to return EINTR if interrupted by a signal. | ||
| 181 | (rs_set_termios): If the baud rate changes to or from B0, | ||
| 182 | this function is now responsible for setting or clearing | ||
| 183 | DTR and RTS. DTR and RTS are only be changed on the | ||
| 184 | transition to or from the B0 state. | ||
| 185 | (rs_close): Wait for the characters to drain based on | ||
| 186 | info->timeout. At low baud rates (50 bps), it may take a | ||
| 187 | long time for the FIFO to completely drain out! | ||
| 188 | (rs_wait_until_sent): Fixed timeout handling. Now | ||
| 189 | releases control to the scheduler, but checks frequently | ||
| 190 | enough so that the function is sensitive enough to pass | ||
| 191 | the timing requirements of the NIST-PCTS. | ||
| 192 | (block_til_ready): When opening the device, don't turn on | ||
| 193 | DTR and RTS if the baud rate is B0. | ||
| 194 | |||
| 195 | Thu Nov 14 00:06:09 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 196 | |||
| 197 | * serial.c (autoconfig): Fix autoconfiguration problems; | ||
| 198 | info->flags wasn't getting initialized from the state | ||
| 199 | structure. Put in more paranoid test for the 16750. | ||
| 200 | |||
| 201 | Fri Nov 8 20:19:50 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 202 | |||
| 203 | * n_tty.c (n_tty_flush_buffer): Only call driver->unthrottle() if | ||
| 204 | the tty was previous throttled. | ||
| 205 | (n_tty_set_termios, write_chan): Add changes suggested by | ||
| 206 | Simon P. Allen to allow hardware cooking. | ||
| 207 | |||
| 208 | * tty_ioctl.c (set_termios): If we get a signal while waiting for | ||
| 209 | the tty to drain, return -EINTR. | ||
| 210 | |||
| 211 | * serial.c (change_speed): Add support for CREAD, as required by | ||
| 212 | POSIX. | ||
| 213 | |||
| 214 | Sat Nov 2 20:43:10 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 215 | |||
| 216 | * serial.c: Wholesale changes. Added support for the Startech | ||
| 217 | 16650 and 16650V2 chips. (WARNING: the new startech | ||
| 218 | 16650A may or may not work!) Added support for the | ||
| 219 | TI16750 (not yet tested). Split async_struct into a | ||
| 220 | transient part (async_struct) and a permanent part | ||
| 221 | (serial_state) which contains the configuration | ||
| 222 | information for the ports. Added new driver routines | ||
| 223 | wait_until_sent() and send_xchar() to help with POSIX | ||
| 224 | compliance. Added support for radio clocks which waggle | ||
| 225 | the carrier detect line (CONFIG_HARD_PPS). | ||
| 226 | |||
| 227 | * tty_ioctl.c (tty_wait_until_sent): Added call to new driver | ||
| 228 | function tty->driver.wait_until_sent(), which returns when | ||
| 229 | the tty's device xmit buffers are drained. Needed for | ||
| 230 | full POSIX compliance. | ||
| 231 | |||
| 232 | (send_prio_char): New function, called by the ioctl's | ||
| 233 | TCIOFF and TCION; uses the new driver call send_xchar(), | ||
| 234 | which will send the XON or XOFF character at high priority | ||
| 235 | (and even if tty output is stopped). | ||
| 236 | |||
| 237 | Wed Jun 5 18:52:04 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 238 | |||
| 239 | * pty.c (pty_close): When closing a pty, make sure packet mode is | ||
| 240 | cleared. | ||
| 241 | |||
| 242 | Sun May 26 09:33:52 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 243 | |||
| 244 | * vesa_blank.c (set_vesa_blanking): Add missing verify_area() call. | ||
| 245 | |||
| 246 | * selection.c (set_selection): Add missing verify_area() call. | ||
| 247 | |||
| 248 | * tty_io.c (tty_ioctl): Add missing verify_area() calls. | ||
| 249 | |||
| 250 | * serial.c (rs_ioctl): Add missing verify_area() calls. | ||
| 251 | (rs_init): Allow initialization of serial driver | ||
| 252 | configuration from a module. | ||
| 253 | |||
| 254 | * random.c (extract_entropy): Add missing verify_area call. | ||
| 255 | Don't limit number of characters returned to | ||
| 256 | 32,768. Extract entropy is now no longer a inlined | ||
| 257 | function. | ||
| 258 | |||
| 259 | (random_read): Check return value in case extract_entropy | ||
| 260 | returns an error. | ||
| 261 | |||
| 262 | (secure_tcp_sequence_number): New function which returns a | ||
| 263 | secure TCP sequence number. This is needed to prevent some | ||
| 264 | nasty TCP hijacking attacks. | ||
| 265 | |||
| 266 | (init_std_data): Initialize using gettimeofday() instead of | ||
| 267 | struct timeval xtime. | ||
| 268 | |||
| 269 | (fast_add_entropy_word, add_entropy_word): Rename the | ||
| 270 | inline function add_entropy_word() to | ||
| 271 | fast_add_entropy_word(). Make add_entropy_word() be the | ||
| 272 | non-inlined function which is used in non-timing critical | ||
| 273 | places, in order to save space. | ||
| 274 | |||
| 275 | (initialize_benchmark, begin_benchmark, end_benchmark): New | ||
| 276 | functions defined when RANDOM_BENCHMARK is defined. They | ||
| 277 | allow us to benchmark the speed of the | ||
| 278 | add_timer_randomness() call. | ||
| 279 | |||
| 280 | (int_ln, rotate_left): Add two new inline functions with | ||
| 281 | i386 optimized asm instructions. This speeds up the | ||
| 282 | critical add_entropy_word() and add_timer_randomness() | ||
| 283 | functions, which are called from interrupt handlers. | ||
| 284 | |||
| 285 | Tue May 7 22:51:11 1996 <tytso@rsts-11.mit.edu> | ||
| 286 | |||
| 287 | * random.c (add_timer_randomness): Limit the amount randomness | ||
| 288 | that we estimate to 12 bits. (An arbitrary amount). | ||
| 289 | |||
| 290 | (extract_entropy): To make it harder to analyze the hash | ||
| 291 | function, fold the hash function in half using XOR, and | ||
| 292 | use the folded result as the value to emit to the user. | ||
| 293 | Also, add timer randomness each pass through the | ||
| 294 | exact_entropy call, to increase the amount of unknown | ||
| 295 | values during the extraction process. | ||
| 296 | |||
| 297 | (random_ioctl): Use IOR/IOW definitions to define the | ||
| 298 | ioctl values used by the /dev/random driver. Allow the | ||
| 299 | old ioctl values to be used for backwards compatibility | ||
| 300 | (for a limited amount of time). | ||
| 301 | |||
| 302 | Wed Apr 24 14:02:04 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | ||
| 303 | |||
| 304 | * random.c (add_timer_randomness): Use 2nd derivative as well to | ||
| 305 | better estimate entropy. | ||
| 306 | |||
| 307 | (rand_initialize): Explicitly initialize all the pointers | ||
| 308 | to NULL. (Clearing pointers using memset isn't portable.) | ||
| 309 | Initialize the random pool with OS-dependent data. | ||
| 310 | |||
| 311 | (random_write): Add sanity checking to the arguments to | ||
| 312 | random_write(), so that bad arguments won't cause a kernel | ||
| 313 | SEGV. | ||
| 314 | |||
| 315 | (random_read): Update the access time of the device inode | ||
| 316 | when you return data to the user. | ||
| 317 | |||
| 318 | (random_ioctl): Wake up the random_wait channel when there | ||
| 319 | are only WAIT_INPUT_BITS available. Add more paranoia | ||
| 320 | checks to make sure entropy_count doesn't go beyond the | ||
| 321 | bounds of (0, POOLSIZE). Add a few missing verify_area | ||
| 322 | checks. Add support for the RNDCLEARPOOL ioctl, which | ||
| 323 | zaps the random pool. | ||
| 324 | |||
| 325 | (add_timer_randomness): Wake up the random_wait | ||
| 326 | channel only when there are WAIT_INPUT_BITS available. | ||
| 327 | |||
| 328 | (random_select): Allow a random refresh daemon process to | ||
| 329 | select on /dev/random for writing; wake up the daemon when | ||
| 330 | there are less than WAIT_OUTPUT_BITS bits of randomness | ||
| 331 | available. | ||
| 332 | |||
| 333 | Tue Apr 23 22:56:07 1996 <tytso@rsts-11.mit.edu> | ||
| 334 | |||
| 335 | * tty_io.c (init_dev): Change return code when user attempts to | ||
| 336 | open master pty which is already open from EAGAIN to EIO, | ||
| 337 | to match with BSD expectations. EIO is more correct | ||
| 338 | anyway, since EAGAIN implies that retrying will be | ||
| 339 | successful --- which it might be.... Eventually!! | ||
| 340 | |||
| 341 | * pty.c (pty_open, pty_close): Fix wait loop so that we don't | ||
| 342 | busy loop while waiting for the master side to open. | ||
| 343 | Fix tty opening/closing logic. TTY_SLAVE_CLOSED was | ||
| 344 | renamed to TTY_OTHER_CLOSED, so that the name is more | ||
| 345 | descriptive. Also fixed code so that the tty flag | ||
| 346 | actually works correctly now.... | ||
| 347 | |||
| 348 | Mon Apr 1 10:22:01 1996 <tytso@rsts-11.mit.edu> | ||
| 349 | |||
| 350 | * serial.c (rs_close): Cleaned up modularization changes. | ||
| 351 | Remove code which forced line discipline back to N_TTY | ||
| 352 | this is done in the tty upper layers, and there's no | ||
| 353 | reason to do it here. (Making this change also | ||
| 354 | removed the requirement that the serial module access | ||
| 355 | the internal kernel symbol "ldiscs".) | ||
| 356 | |||
| 357 | * tty_io.c (tty_init): Formally register a tty_driver entry for | ||
| 358 | /dev/tty (device 4, 0) and /dev/console (device 5, 0). | ||
| 359 | This guarantees that major device numbers 4 and 5 will be | ||
| 360 | reserved for the tty subsystem (as they have to be because | ||
| 361 | of /dev/tty and /dev/console). Removed tty_regdev, as | ||
| 362 | this interface is no longer necessary. | ||
| 363 | |||
| 364 | Sun Mar 17 20:42:47 GMT 1996 <ah@doc.ic.ac.uk> | ||
| 365 | |||
| 366 | * serial.c : modularisation (changes in linux/fs/device.c allow | ||
| 367 | kerneld to automatically load the serial module). | ||
| 368 | |||
| 369 | * Makefile, Config.in : serial modularisation adds. | ||
| 370 | |||
| 371 | * tty_io.c : tty_init_ctty used by to register "cua" driver just | ||
| 372 | for the /dev/tty device (5,0). Added tty_regdev. | ||
| 373 | |||
| 374 | * serial.c (shutdown, rs_ioctl) : when port shuts down wakeup processes | ||
| 375 | waiting on delta_msr_wait. The TIOCMIWAIT ioctl returns EIO | ||
| 376 | if no change was done since the time of call. | ||
| 377 | |||
| 378 | Sat Mar 16 14:33:13 1996 <aeb@cwi.nl> | ||
| 379 | |||
| 380 | * tty_io.c (disassociate_ctty): If disassociate_ctty is called by | ||
| 381 | exit, do not perform an implicit vhangup on a pty. | ||
| 382 | |||
| 383 | Fri Feb 9 14:15:47 1996 <tytso@rsts-11.mit.edu> | ||
| 384 | |||
| 385 | * serial.c (block_til_ready): Fixed another race condition which | ||
| 386 | happens if a hangup happens during the open. | ||
| 387 | |||
| 388 | Wed Jan 10 10:08:00 1996 <tytso@rsts-11.mit.edu> | ||
| 389 | |||
| 390 | * serial.c (block_til_ready): Remove race condition which happened | ||
| 391 | if a hangup condition happened during the setup of the | ||
| 392 | UART, before rs_open() called block_til_ready(). This | ||
| 393 | caused the info->count counter to be erroneously | ||
| 394 | decremented. | ||
| 395 | |||
| 396 | * serial.c (startup, rs_open): Remove race condition that could | ||
| 397 | cause a memory leak of one page. (Fortunately, both race | ||
| 398 | conditions were relatively rare in practice.) | ||
| 399 | |||
| 400 | Tue Dec 5 13:21:27 1995 <tytso@rsts-11.mit.edu> | ||
| 401 | |||
| 402 | * serial.c (check_modem_status, rs_ioctl): Support the new | ||
| 403 | ioctl()'s TIOCGICOUNT, TIOCMIWAIT. These allow an | ||
| 404 | application program to wait on a modem serial register | ||
| 405 | status bit change, and to find out how many changes have | ||
| 406 | taken place for the MSR bits. | ||
| 407 | |||
| 408 | (rs_write): Eliminate a race condition which is introduced | ||
| 409 | if it is necessary to wait for the semaphore. | ||
| 410 | |||
| 411 | Sat Nov 4 17:14:45 1995 <tytso@rsts-11.mit.edu> | ||
| 412 | |||
| 413 | * tty_io.c (tty_init): Move registration of TTY_MAJOR and | ||
| 414 | TTY_AUX_MAJOR to the end, so that /proc/devices looks | ||
| 415 | prettier. | ||
| 416 | |||
| 417 | * pty.c (pty_init): Use new major numbers for PTY master and slave | ||
| 418 | devices. This allow us to have more than 64 pty's. We | ||
| 419 | register the old pty devices for backwards compatibility. | ||
| 420 | Note that a system should either be using the old pty | ||
| 421 | devices or the new pty devices --- in general, it should | ||
| 422 | try to use both, since they map into the same pty table. | ||
| 423 | The old pty devices are strictly for backwards compatibility. | ||
| 424 | |||
| 425 | Wed Oct 11 12:45:24 1995 <tytso@rsts-11.mit.edu> | ||
| 426 | |||
| 427 | * tty_io.c (disassociate_ctty): If disassociate_ctty is called by | ||
| 428 | exit, perform an implicit vhangup on the tty. | ||
| 429 | |||
| 430 | * pty.c (pty_close): When the master pty is closed, send a hangup | ||
| 431 | to the slave pty. | ||
| 432 | (pty_open): Use the flag TTY_SLAVE_CLOSED to test to see | ||
| 433 | if there are any open slave ptys, instead of using | ||
| 434 | tty->link->count. The old method got confused if there | ||
| 435 | were processes that had hung-up file descriptors on the | ||
| 436 | slave tty. | ||
| 437 | |||
| 438 | Tue May 2 00:53:25 1995 <tytso@rsx-11.mit.edu> | ||
| 439 | |||
| 440 | * tty_io.c (tty_set_ldisc): Wait until the output buffer is | ||
| 441 | drained before closing the old line discipline --- needed | ||
| 442 | in only one case: XON/XOFF processing. | ||
| 443 | |||
| 444 | * n_tty.c (n_tty_close): Don't bother waiting until the output | ||
| 445 | driver is closed; in general, the line discipline | ||
| 446 | shouldn't care if the hardware is finished | ||
| 447 | transmitting before the line discipline terminates. | ||
| 448 | |||
| 449 | * tty_io.c (release_dev): Shutdown the line discipline after | ||
| 450 | decrementing the tty count variable; but set the | ||
| 451 | TTY_CLOSING flag so that we know that this tty structure | ||
| 452 | isn't long for this world. | ||
| 453 | |||
| 454 | * tty_io.c (init_dev): Add sanity code to check to see if | ||
| 455 | TTY_CLOSING is set on a tty structure; if so, something | ||
| 456 | bad has happened (probably a line discipline close blocked | ||
| 457 | when it shouldn't have; so do a kernel printk and then | ||
| 458 | return an error). | ||
| 459 | |||
| 460 | Wed Apr 26 10:23:44 1995 Theodore Y. Ts'o <tytso@localhost> | ||
| 461 | |||
| 462 | * tty_io.c (release_dev): Try to shutdown the line discipline | ||
| 463 | *before* decrementing the tty count variable; this removes | ||
| 464 | a potential race condition which occurs when the line | ||
| 465 | discipline close blocks, and another process then tries | ||
| 466 | open the same serial port. | ||
| 467 | |||
| 468 | * serial.c (rs_hangup): When hanging up, flush the output buffer | ||
| 469 | before shutting down the UART. Otherwise the line | ||
| 470 | discipline close blocks waiting for the characters to get | ||
| 471 | flushed, which never happens until the serial port gets reused. | ||
| 472 | |||
| 473 | Wed Apr 12 08:06:16 1995 Theodore Y. Ts'o <tytso@localhost> | ||
| 474 | |||
| 475 | * serial.c (do_serial_hangup, do_softint, check_modem_status, | ||
| 476 | rs_init): Hangups are now scheduled via a separate tqueue | ||
| 477 | structure in the async_struct structure, tqueue_hangup. | ||
| 478 | This task is pushed on to the tq_schedule queue, so that | ||
| 479 | it is processed synchronously by the scheduler. | ||
| 480 | |||
| 481 | Sat Feb 18 12:13:51 1995 Theodore Y. Ts'o (tytso@rt-11) | ||
| 482 | |||
| 483 | * tty_io.c (disassociate_ctty, tty_open, tty_ioctl): Clear | ||
| 484 | current->tty_old_pgrp field when a session leader | ||
| 485 | acquires a controlling tty, and after a session leader | ||
| 486 | has disassociated from a controlling tty. | ||
| 487 | |||
| 488 | Fri Feb 17 09:34:09 1995 Theodore Y. Ts'o (tytso@rt-11) | ||
| 489 | |||
| 490 | * serial.c (rs_interrupt_single, rs_interrupt, rs_interrupt_multi): | ||
| 491 | Change the number of passes made from 64 to be 256, | ||
| 492 | configurable with the #define RS_ISR_PASS_LIMIT. | ||
| 493 | |||
| 494 | * serial.c (rs_init, set_serial_info, get_serial_info, rs_close): | ||
| 495 | Remove support for closing_wait2. Instead, set | ||
| 496 | tty->closing and rely on the line discipline to prevent | ||
| 497 | echo wars. | ||
| 498 | |||
| 499 | * n_tty.c (n_tty_receive_char): IEXTEN does not need to be | ||
| 500 | enabled in order for IXANY to be active. | ||
| 501 | |||
| 502 | If tty->closing is set, then only process XON and XOFF | ||
| 503 | characters. | ||
| 504 | |||
| 505 | Sun Feb 12 23:57:48 1995 Theodore Y. Ts'o (tytso@rt-11) | ||
| 506 | |||
| 507 | * serial.c (rs_timer): Change the interrupt poll time from 60 | ||
| 508 | seconds to 10 seconds, configurable with the #define | ||
| 509 | RS_STROBE_TIME. | ||
| 510 | |||
| 511 | * serial.c (rs_interrupt_multi, startup, shutdown, rs_ioctl, | ||
| 512 | set_multiport_struct, get_multiport_struct): Add | ||
| 513 | provisions for a new type of interrupt service routine, | ||
| 514 | which better supports multiple serial ports on a single | ||
| 515 | IRQ. | ||
| 516 | |||
| 517 | Sun Feb 5 19:35:11 1995 Theodore Y. Ts'o (tytso@rt-11) | ||
| 518 | |||
| 519 | * tty_ioctl.c (n_tty_ioctl, set_termios, tty_wait_until_sent): | ||
| 520 | * serial.c (rs_ioctl, rs_close): | ||
| 521 | * cyclades.c (cy_ioctl, cy_close): | ||
| 522 | * n_tty.c (n_tty_close): Rename wait_until_sent to | ||
| 523 | tty_wait_until_sent, so that it's a better name to export | ||
| 524 | in ksyms.c. | ||
| 525 | |||
| 526 | Sat Feb 4 23:36:20 1995 Theodore Y. Ts'o (tytso@rt-11) | ||
| 527 | |||
| 528 | * serial.c (rs_close): Added missing check for closing_wait2 being | ||
| 529 | ASYNC_CLOSING_WAIT_NONE. | ||
| 530 | |||
| 531 | Thu Jan 26 09:02:49 1995 Theodore Y. Ts'o (tytso@rt-11) | ||
| 532 | |||
| 533 | * serial.c (rs_init, set_serial_info, get_serial_info, | ||
| 534 | rs_close): Support close_wait in the serial driver. | ||
| 535 | This is helpful for slow devices (like serial | ||
| 536 | plotters) so that their outputs don't get flushed upon | ||
| 537 | device close. This has to be configurable because | ||
| 538 | normally we don't want ports to be hung up for long | ||
| 539 | periods of time during a close when they are not | ||
| 540 | connected to a device, or the device is powered off. | ||
| 541 | |||
| 542 | The default is to wait 30 seconds; in the case of a | ||
| 543 | very slow device, the close_wait timeout should be | ||
| 544 | lengthened. If it is set to 0, the kernel will wait | ||
| 545 | forever for all of the data to be transmitted. | ||
| 546 | |||
| 547 | Thu Jan 17 01:17:20 1995 Theodore Y. Ts'o (tytso@rt-11) | ||
| 548 | |||
| 549 | * serial.c (startup, change_speed, rs_init): Add support to detect | ||
| 550 | the StarTech 16650 chip. Treat it as a 16450 for now, | ||
| 551 | because of its FIFO bugs. | ||
| 552 | |||
| 553 | Thu Jan 5 21:21:57 1995 <dahinds@users.sourceforge.net> | ||
| 554 | |||
| 555 | * serial.c: (receive_char): Added counter to prevent infinite loop | ||
| 556 | when a PCMCIA serial device is ejected. | ||
| 557 | |||
| 558 | Thu Dec 29 17:53:48 1994 <tytso@rsx-11.mit.edu> | ||
| 559 | |||
| 560 | * tty_io.c (check_tty_count): New procedure which checks | ||
| 561 | tty->count to make sure that it matches with the number of | ||
| 562 | open file descriptors which point at the structure. If | ||
| 563 | the number doesn't match, it prints a warning message. | ||
| 564 | |||
| 565 | Wed Dec 28 15:41:51 1994 <tytso@rsx-11.mit.edu> | ||
| 566 | |||
| 567 | * tty_io.c (do_tty_hangup, disassociate_ctty): At hangup time, | ||
| 568 | save the tty's current foreground process group in the | ||
| 569 | session leader's task structure. When the session leader | ||
| 570 | terminates, send a SIGHUP, SIGCONT to that process group. | ||
| 571 | This is not required by POSIX, but it's not prohibited | ||
| 572 | either, and it appears to be the least intrusive way | ||
| 573 | to fix a problem that dialup servers have with | ||
| 574 | orphaned process groups caused by modem hangups. | ||
| 575 | |||
| 576 | Thu Dec 8 14:52:11 1994 <tytso@rsx-11.mit.edu> | ||
| 577 | |||
| 578 | * serial.c (rs_ioctl): Don't allow most ioctl's if the serial port | ||
| 579 | isn't initialized. | ||
| 580 | |||
| 581 | * serial.c (rs_close): Don't clear the IER if the serial port | ||
| 582 | isn't initialized. | ||
| 583 | |||
| 584 | * serial.c (block_til_ready): Don't try to block on the dialin | ||
| 585 | port if the serial port isn't initialized. | ||
| 586 | |||
| 587 | Wed Dec 7 10:48:30 1994 Si Park (si@wimpol.demon.co.uk) | ||
| 588 | * tty_io.c (tty_register_driver): Fix bug when linking onto | ||
| 589 | the tty_drivers list. We now test that there are elements | ||
| 590 | already on the list before setting the back link from the | ||
| 591 | first element to the new driver. | ||
| 592 | |||
| 593 | * tty_io.c (tty_unregister_driver): Fix bug in unlinking the | ||
| 594 | specified driver from the tty_drivers list. We were not | ||
| 595 | setting the back link correctly. This used to result in | ||
| 596 | a dangling back link pointer and cause panics on the next | ||
| 597 | call to get_tty_driver(). | ||
| 598 | |||
| 599 | Tue Nov 29 10:21:09 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 600 | |||
| 601 | * tty_io.c (tty_unregister_driver): Fix bug in | ||
| 602 | tty_unregister_driver where the pointer to the refcount is | ||
| 603 | tested, instead of the refcount itself. This caused | ||
| 604 | tty_unregister_driver to always return EBUSY. | ||
| 605 | |||
| 606 | Sat Nov 26 11:59:24 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 607 | |||
| 608 | * tty_io.c (tty_ioctl): Add support for the new ioctl | ||
| 609 | TIOCTTYGSTRUCT, which allow a kernel debugging program | ||
| 610 | direct read access to the tty and tty_driver structures. | ||
| 611 | |||
| 612 | Fri Nov 25 17:26:22 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 613 | |||
| 614 | * serial.c (rs_set_termios): Don't wake up processes blocked in | ||
| 615 | open when the CLOCAL flag changes, since a blocking | ||
| 616 | open only samples the CLOCAL flag once when it blocks, | ||
| 617 | and doesn't check it again. (n.b. FreeBSD has a | ||
| 618 | different behavior for blocking opens; it's not clear | ||
| 619 | whether Linux or FreeBSD's interpretation is correct. | ||
| 620 | POSIX doesn't give clear guidance on this issue, so | ||
| 621 | this may change in the future....) | ||
| 622 | |||
| 623 | * serial.c (block_til_ready): Use the correct termios structure to | ||
| 624 | check the CLOCAL flag. If the cuaXX device is active, | ||
| 625 | then check the saved termios for the ttySXX device. | ||
| 626 | Otherwise, use the currently active termios structure. | ||
| 627 | |||
| 628 | Sun Nov 6 21:05:44 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 629 | |||
| 630 | * serial.c (change_speed): Add support for direct access of | ||
| 631 | 57,600 and 115,200 bps. | ||
| 632 | |||
| 633 | Wed Nov 2 10:32:36 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 634 | |||
| 635 | * n_tty.c (n_tty_receive_room): Only allow excess characters | ||
| 636 | through if we are in ICANON mode *and* there are other no | ||
| 637 | pending lines in the buffer. Otherwise cut and paste over | ||
| 638 | 4k breaks. | ||
| 639 | |||
| 640 | Sat Oct 29 18:17:34 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 641 | |||
| 642 | * serial.c (rs_ioctl, get_lsr_info): Added patch suggested by Arne | ||
| 643 | Riiber so that user mode programs can tell when the | ||
| 644 | transmitter shift register is empty. | ||
| 645 | |||
| 646 | Thu Oct 27 23:14:29 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 647 | |||
| 648 | * tty_ioctl.c (wait_until_sent): Added debugging printk statements | ||
| 649 | (under the #ifdef TTY_DEBUG_WAIT_UNTIL_SENT) | ||
| 650 | |||
| 651 | * serial.c (rs_interrupt, rs_interrupt_single, receive_chars, | ||
| 652 | change_speed, rs_close): rs_close now disables receiver | ||
| 653 | interrupts when closing the serial port. This allows the | ||
| 654 | serial port to close quickly when Linux and a modem (or a | ||
| 655 | mouse) are engaged in an echo war; when closing the serial | ||
| 656 | port, we now first stop listening to incoming characters, | ||
| 657 | and *then* wait for the transmit buffer to drain. | ||
| 658 | |||
| 659 | In order to make this change, the info->read_status_mask | ||
| 660 | is now used to control what bits of the line status | ||
| 661 | register are looked at in the interrupt routine in all | ||
| 662 | cases; previously it was only used in receive_chars to | ||
| 663 | select a few of the status bits. | ||
| 664 | |||
| 665 | Mon Oct 24 23:36:21 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 666 | |||
| 667 | * serial.c (rs_close): Add a timeout to the transmitter flush | ||
| 668 | loop; this is just a sanity check in case we have flaky | ||
| 669 | (or non-existent-but-configured-by-the-user) hardware. | ||
| 670 | |||
| 671 | Fri Oct 21 09:37:23 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 672 | |||
| 673 | * tty_io.c (tty_fasync): When asynchronous I/O is enabled, if the | ||
| 674 | process or process group has not be specified yet, set it | ||
| 675 | to be the tty's process group, or if that is not yet set, | ||
| 676 | to the current process's pid. | ||
| 677 | |||
| 678 | Thu Oct 20 23:17:28 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 679 | |||
| 680 | * n_tty.c (n_tty_receive_room): If we are doing input | ||
| 681 | canonicalization, let as many characters through as | ||
| 682 | possible, so that the excess characters can be "beeped". | ||
| 683 | |||
| 684 | Tue Oct 18 10:02:43 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 685 | |||
| 686 | * serial.c (rs_start): Removed an incorrect '!' that was | ||
| 687 | preventing transmit interrupts from being re-enabled in | ||
| 688 | rs_start(). Fortunately in most cases it would be | ||
| 689 | re-enabled elsewhere, but this still should be fixed | ||
| 690 | correctly. | ||
| 691 | |||
| 692 | Sun Oct 9 23:46:03 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 693 | |||
| 694 | * tty_io.c (do_tty_hangup): If the tty driver flags | ||
| 695 | TTY_DRIVER_RESET_TERMIOS is set, then reset the termios | ||
| 696 | settings back to the driver's initial configuration. This | ||
| 697 | allows the termios settings to be reset even if a process | ||
| 698 | has hung up file descriptors keeping a pty's termios from | ||
| 699 | being freed and reset. | ||
| 700 | |||
| 701 | * tty_io.c (release_dev): Fix memory leak. The pty's other | ||
| 702 | termios structure should also be freed. | ||
| 703 | |||
| 704 | * serial.c (rs_close, shutdown): Change how we wait for the | ||
| 705 | transmitter to completely drain before shutting down the | ||
| 706 | serial port. We now do it by scheduling in another | ||
| 707 | process instead of busy looping with the interrupts turned | ||
| 708 | on. This may eliminate some race condition problems that | ||
| 709 | some people seem to be reporting. | ||
| 710 | |||
| 711 | Sun Sep 25 14:18:14 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 712 | |||
| 713 | * tty_io.c (release_dev): When freeing a tty make sure that both | ||
| 714 | the tty and the o_tty (if present) aren't a process's | ||
| 715 | controlling tty. (Previously, we only checked the tty.) | ||
| 716 | |||
| 717 | * serial.c (change_speed): Only enable the Modem Status | ||
| 718 | Interrupt for a port if CLOCAL is not set or CRTSCTS | ||
| 719 | is set. If we're not checking the carrier detect and | ||
| 720 | CTS line, there's no point in enabling the modem | ||
| 721 | status interrupt. This will save spurious interrupts | ||
| 722 | from slowing down systems who have terminals that | ||
| 723 | don't support either line. (Of course, if you want | ||
| 724 | only one of CD and CTS support, you will need a | ||
| 725 | properly wired serial cable.) | ||
| 726 | |||
| 727 | Thu Sep 22 08:32:48 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 728 | |||
| 729 | * tty_io.c (do_SAK): Return if tty is null. | ||
| 730 | |||
| 731 | * tty_io.c (_tty_name): Return "NULL tty" if the passed in tty is | ||
| 732 | NULL. | ||
| 733 | |||
| 734 | Sat Sep 17 13:19:25 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 735 | |||
| 736 | * tty_ioctl.c (n_tty_ioctl): Fix TIOCGLCKTRMIOS and | ||
| 737 | TIOCSLCKTRMIOS, which were totally broken. Remove | ||
| 738 | extra indirection from argument; it should be a struct | ||
| 739 | termios *, not a struct termios **. | ||
| 740 | &real_tty->termios_locked should have been | ||
| 741 | real_tty->termios_locked. This caused us to be | ||
| 742 | reading and writing the termios_locked structure to | ||
| 743 | random places in kernel memory. | ||
| 744 | |||
| 745 | * tty_io.c (release_dev): Oops! Forgot to delete a critical kfree | ||
| 746 | of the locked_termios. This leaves the locked_termios | ||
| 747 | structure pointed at a freed object. | ||
| 748 | |||
| 749 | Fri Sep 16 08:13:25 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 750 | |||
| 751 | * tty_io.c (tty_open): Don't check for an exclusive open until | ||
| 752 | after the device specific open routine has been called. | ||
| 753 | Otherwise, the serial device ref counting will be screwed | ||
| 754 | up. | ||
| 755 | |||
| 756 | * serial.c (rs_open, block_til_ready): Don't set termios structure | ||
| 757 | until after block_til_ready has returned successfully. | ||
| 758 | Modify block_til_ready to check the normal_termios | ||
| 759 | structure directly, so it doesn't rely on termios being | ||
| 760 | set before it's called. | ||
| 761 | |||
| 762 | Thu Sep 15 23:34:01 1994 Theodore Y. Ts'o (tytso@rt-11) | ||
| 763 | |||
| 764 | * serial.c (rs_close): Turn off interrupts during rs_close() to | ||
| 765 | prevent a race condition with the hangup code (which | ||
| 766 | runs during a software interrupt). | ||
| 767 | |||
| 768 | * tty_io.c (release_dev): Don't free the locked_termios structure; | ||
| 769 | its state must be retained across device opens. | ||
| 770 | |||
| 771 | |||
| 772 | * tty_io.c (tty_unregister_driver): Added function to unregister a | ||
| 773 | tty driver. (For loadable device drivers.) | ||
| 774 | |||
| 775 | |||
diff --git a/drivers/char/agp/intel-agp.c b/drivers/char/agp/intel-agp.c index 919a28558d36..a3e10dc7cc25 100644 --- a/drivers/char/agp/intel-agp.c +++ b/drivers/char/agp/intel-agp.c | |||
| @@ -298,7 +298,7 @@ static void intel_agp_insert_sg_entries(struct agp_memory *mem, | |||
| 298 | j++; | 298 | j++; |
| 299 | } | 299 | } |
| 300 | } else { | 300 | } else { |
| 301 | /* sg may merge pages, but we have to seperate | 301 | /* sg may merge pages, but we have to separate |
| 302 | * per-page addr for GTT */ | 302 | * per-page addr for GTT */ |
| 303 | unsigned int len, m; | 303 | unsigned int len, m; |
| 304 | 304 | ||
diff --git a/drivers/char/applicom.c b/drivers/char/applicom.c index fe2cb2f5db17..a7424bf7eacf 100644 --- a/drivers/char/applicom.c +++ b/drivers/char/applicom.c | |||
| @@ -14,7 +14,7 @@ | |||
| 14 | /* et passe en argument a acinit, mais est scrute sur le bus pour s'adapter */ | 14 | /* et passe en argument a acinit, mais est scrute sur le bus pour s'adapter */ |
| 15 | /* au nombre de cartes presentes sur le bus. IOCL code 6 affichait V2.4.3 */ | 15 | /* au nombre de cartes presentes sur le bus. IOCL code 6 affichait V2.4.3 */ |
| 16 | /* F.LAFORSE 28/11/95 creation de fichiers acXX.o avec les differentes */ | 16 | /* F.LAFORSE 28/11/95 creation de fichiers acXX.o avec les differentes */ |
| 17 | /* adresses de base des cartes, IOCTL 6 plus complet */ | 17 | /* addresses de base des cartes, IOCTL 6 plus complet */ |
| 18 | /* J.PAGET le 19/08/96 copie de la version V2.6 en V2.8.0 sans modification */ | 18 | /* J.PAGET le 19/08/96 copie de la version V2.6 en V2.8.0 sans modification */ |
| 19 | /* de code autre que le texte V2.6.1 en V2.8.0 */ | 19 | /* de code autre que le texte V2.6.1 en V2.8.0 */ |
| 20 | /*****************************************************************************/ | 20 | /*****************************************************************************/ |
diff --git a/drivers/char/hvc_iseries.c b/drivers/char/hvc_iseries.c index fd0242676a2a..21c54955084e 100644 --- a/drivers/char/hvc_iseries.c +++ b/drivers/char/hvc_iseries.c | |||
| @@ -353,7 +353,7 @@ static void hvc_close_event(struct HvLpEvent *event) | |||
| 353 | 353 | ||
| 354 | if (!hvlpevent_is_int(event)) { | 354 | if (!hvlpevent_is_int(event)) { |
| 355 | printk(KERN_WARNING | 355 | printk(KERN_WARNING |
| 356 | "hvc: got unexpected close acknowlegement\n"); | 356 | "hvc: got unexpected close acknowledgement\n"); |
| 357 | return; | 357 | return; |
| 358 | } | 358 | } |
| 359 | 359 | ||
diff --git a/drivers/char/hw_random/n2-drv.c b/drivers/char/hw_random/n2-drv.c index 9b3e09cd41f9..10f868eefaa6 100644 --- a/drivers/char/hw_random/n2-drv.c +++ b/drivers/char/hw_random/n2-drv.c | |||
| @@ -71,7 +71,7 @@ MODULE_VERSION(DRV_MODULE_VERSION); | |||
| 71 | * x22 + x21 + x17 + x15 + x13 + x12 + x11 + x7 + x5 + x + 1 | 71 | * x22 + x21 + x17 + x15 + x13 + x12 + x11 + x7 + x5 + x + 1 |
| 72 | * | 72 | * |
| 73 | * The RNG_CTL_VCO value of each noise cell must be programmed | 73 | * The RNG_CTL_VCO value of each noise cell must be programmed |
| 74 | * seperately. This is why 4 control register values must be provided | 74 | * separately. This is why 4 control register values must be provided |
| 75 | * to the hypervisor. During a write, the hypervisor writes them all, | 75 | * to the hypervisor. During a write, the hypervisor writes them all, |
| 76 | * one at a time, to the actual RNG_CTL register. The first three | 76 | * one at a time, to the actual RNG_CTL register. The first three |
| 77 | * values are used to setup the desired RNG_CTL_VCO for each entropy | 77 | * values are used to setup the desired RNG_CTL_VCO for each entropy |
diff --git a/drivers/char/ip2/i2hw.h b/drivers/char/ip2/i2hw.h index 8aa6e7ab8d5b..c0ba6c05f0cd 100644 --- a/drivers/char/ip2/i2hw.h +++ b/drivers/char/ip2/i2hw.h | |||
| @@ -559,7 +559,7 @@ Loadware may be sent to the board in two ways: | |||
| 559 | 559 | ||
| 560 | 2) It may be hard-coded into your source by including a .h file (typically | 560 | 2) It may be hard-coded into your source by including a .h file (typically |
| 561 | supplied by Computone), which declares a data array and initializes every | 561 | supplied by Computone), which declares a data array and initializes every |
| 562 | element. This acheives the same result as if an entire loadware file had | 562 | element. This achieves the same result as if an entire loadware file had |
| 563 | been read into the array. | 563 | been read into the array. |
| 564 | 564 | ||
| 565 | This requires more data space in your program, but access to the file system | 565 | This requires more data space in your program, but access to the file system |
diff --git a/drivers/char/pty.c b/drivers/char/pty.c index 385c44b3034f..5ee424817263 100644 --- a/drivers/char/pty.c +++ b/drivers/char/pty.c | |||
| @@ -220,7 +220,7 @@ static void pty_set_termios(struct tty_struct *tty, | |||
| 220 | * @tty: tty being resized | 220 | * @tty: tty being resized |
| 221 | * @ws: window size being set. | 221 | * @ws: window size being set. |
| 222 | * | 222 | * |
| 223 | * Update the termios variables and send the neccessary signals to | 223 | * Update the termios variables and send the necessary signals to |
| 224 | * peform a terminal resize correctly | 224 | * peform a terminal resize correctly |
| 225 | */ | 225 | */ |
| 226 | 226 | ||
diff --git a/drivers/char/random.c b/drivers/char/random.c index 2849713d2231..2fd3d39995d5 100644 --- a/drivers/char/random.c +++ b/drivers/char/random.c | |||
| @@ -1191,7 +1191,7 @@ const struct file_operations urandom_fops = { | |||
| 1191 | void generate_random_uuid(unsigned char uuid_out[16]) | 1191 | void generate_random_uuid(unsigned char uuid_out[16]) |
| 1192 | { | 1192 | { |
| 1193 | get_random_bytes(uuid_out, 16); | 1193 | get_random_bytes(uuid_out, 16); |
| 1194 | /* Set UUID version to 4 --- truely random generation */ | 1194 | /* Set UUID version to 4 --- truly random generation */ |
| 1195 | uuid_out[6] = (uuid_out[6] & 0x0F) | 0x40; | 1195 | uuid_out[6] = (uuid_out[6] & 0x0F) | 0x40; |
| 1196 | /* Set the UUID variant to DCE */ | 1196 | /* Set the UUID variant to DCE */ |
| 1197 | uuid_out[8] = (uuid_out[8] & 0x3F) | 0x80; | 1197 | uuid_out[8] = (uuid_out[8] & 0x3F) | 0x80; |
diff --git a/drivers/char/serial167.c b/drivers/char/serial167.c index 986aa606a6b6..1ec3d5cd748f 100644 --- a/drivers/char/serial167.c +++ b/drivers/char/serial167.c | |||
| @@ -1989,7 +1989,7 @@ void mvme167_serial_console_setup(int cflag) | |||
| 1989 | /* | 1989 | /* |
| 1990 | * Attempt to set up all channels to something reasonable, and | 1990 | * Attempt to set up all channels to something reasonable, and |
| 1991 | * bang out a INIT_CHAN command. We should then be able to limit | 1991 | * bang out a INIT_CHAN command. We should then be able to limit |
| 1992 | * the ammount of fiddling we have to do in normal running. | 1992 | * the amount of fiddling we have to do in normal running. |
| 1993 | */ | 1993 | */ |
| 1994 | 1994 | ||
| 1995 | for (ch = 3; ch >= 0; ch--) { | 1995 | for (ch = 3; ch >= 0; ch--) { |
diff --git a/drivers/char/tty_io.c b/drivers/char/tty_io.c index dcb9083ecde0..a42c466f7092 100644 --- a/drivers/char/tty_io.c +++ b/drivers/char/tty_io.c | |||
| @@ -2028,7 +2028,7 @@ static int tiocgwinsz(struct tty_struct *tty, struct winsize __user *arg) | |||
| 2028 | * @rows: rows (character) | 2028 | * @rows: rows (character) |
| 2029 | * @cols: cols (character) | 2029 | * @cols: cols (character) |
| 2030 | * | 2030 | * |
| 2031 | * Update the termios variables and send the neccessary signals to | 2031 | * Update the termios variables and send the necessary signals to |
| 2032 | * peform a terminal resize correctly | 2032 | * peform a terminal resize correctly |
| 2033 | */ | 2033 | */ |
| 2034 | 2034 | ||
diff --git a/drivers/char/vt.c b/drivers/char/vt.c index 50faa1fb0f06..bd1d1164fec5 100644 --- a/drivers/char/vt.c +++ b/drivers/char/vt.c | |||
| @@ -821,7 +821,7 @@ static inline int resize_screen(struct vc_data *vc, int width, int height, | |||
| 821 | * | 821 | * |
| 822 | * Resize a virtual console, clipping according to the actual constraints. | 822 | * Resize a virtual console, clipping according to the actual constraints. |
| 823 | * If the caller passes a tty structure then update the termios winsize | 823 | * If the caller passes a tty structure then update the termios winsize |
| 824 | * information and perform any neccessary signal handling. | 824 | * information and perform any necessary signal handling. |
| 825 | * | 825 | * |
| 826 | * Caller must hold the console semaphore. Takes the termios mutex and | 826 | * Caller must hold the console semaphore. Takes the termios mutex and |
| 827 | * ctrl_lock of the tty IFF a tty is passed. | 827 | * ctrl_lock of the tty IFF a tty is passed. |
| @@ -2119,8 +2119,6 @@ static int do_con_write(struct tty_struct *tty, const unsigned char *buf, int co | |||
| 2119 | uint8_t inverse; | 2119 | uint8_t inverse; |
| 2120 | uint8_t width; | 2120 | uint8_t width; |
| 2121 | u16 himask, charmask; | 2121 | u16 himask, charmask; |
| 2122 | const unsigned char *orig_buf = NULL; | ||
| 2123 | int orig_count; | ||
| 2124 | 2122 | ||
| 2125 | if (in_interrupt()) | 2123 | if (in_interrupt()) |
| 2126 | return count; | 2124 | return count; |
| @@ -2142,8 +2140,6 @@ static int do_con_write(struct tty_struct *tty, const unsigned char *buf, int co | |||
| 2142 | release_console_sem(); | 2140 | release_console_sem(); |
| 2143 | return 0; | 2141 | return 0; |
| 2144 | } | 2142 | } |
| 2145 | orig_buf = buf; | ||
| 2146 | orig_count = count; | ||
| 2147 | 2143 | ||
| 2148 | himask = vc->vc_hi_font_mask; | 2144 | himask = vc->vc_hi_font_mask; |
| 2149 | charmask = himask ? 0x1ff : 0xff; | 2145 | charmask = himask ? 0x1ff : 0xff; |
diff --git a/drivers/crypto/hifn_795x.c b/drivers/crypto/hifn_795x.c index 09ad9154d86c..73e8b1713b54 100644 --- a/drivers/crypto/hifn_795x.c +++ b/drivers/crypto/hifn_795x.c | |||
| @@ -321,7 +321,7 @@ static atomic_t hifn_dev_number; | |||
| 321 | #define HIFN_PUBOPLEN_MOD_M 0x0000007f /* modulus length mask */ | 321 | #define HIFN_PUBOPLEN_MOD_M 0x0000007f /* modulus length mask */ |
| 322 | #define HIFN_PUBOPLEN_MOD_S 0 /* modulus length shift */ | 322 | #define HIFN_PUBOPLEN_MOD_S 0 /* modulus length shift */ |
| 323 | #define HIFN_PUBOPLEN_EXP_M 0x0003ff80 /* exponent length mask */ | 323 | #define HIFN_PUBOPLEN_EXP_M 0x0003ff80 /* exponent length mask */ |
| 324 | #define HIFN_PUBOPLEN_EXP_S 7 /* exponent lenght shift */ | 324 | #define HIFN_PUBOPLEN_EXP_S 7 /* exponent length shift */ |
| 325 | #define HIFN_PUBOPLEN_RED_M 0x003c0000 /* reducend length mask */ | 325 | #define HIFN_PUBOPLEN_RED_M 0x003c0000 /* reducend length mask */ |
| 326 | #define HIFN_PUBOPLEN_RED_S 18 /* reducend length shift */ | 326 | #define HIFN_PUBOPLEN_RED_S 18 /* reducend length shift */ |
| 327 | 327 | ||
diff --git a/drivers/dma/coh901318_lli.h b/drivers/dma/coh901318_lli.h index 7bf713b79c6b..7a5c80990e9e 100644 --- a/drivers/dma/coh901318_lli.h +++ b/drivers/dma/coh901318_lli.h | |||
| @@ -30,7 +30,7 @@ struct device; | |||
| 30 | * @pool: pool handle | 30 | * @pool: pool handle |
| 31 | * @dev: dma device | 31 | * @dev: dma device |
| 32 | * @lli_nbr: number of lli:s in the pool | 32 | * @lli_nbr: number of lli:s in the pool |
| 33 | * @algin: adress alignemtn of lli:s | 33 | * @algin: address alignemtn of lli:s |
| 34 | * returns 0 on success otherwise none zero | 34 | * returns 0 on success otherwise none zero |
| 35 | */ | 35 | */ |
| 36 | int coh901318_pool_create(struct coh901318_pool *pool, | 36 | int coh901318_pool_create(struct coh901318_pool *pool, |
diff --git a/drivers/gpu/drm/nouveau/nouveau_bios.c b/drivers/gpu/drm/nouveau/nouveau_bios.c index 71247da17da5..75bceee76044 100644 --- a/drivers/gpu/drm/nouveau/nouveau_bios.c +++ b/drivers/gpu/drm/nouveau/nouveau_bios.c | |||
| @@ -3545,7 +3545,7 @@ int nouveau_bios_parse_lvds_table(struct drm_device *dev, int pxclk, bool *dl, b | |||
| 3545 | * at which modes should be set up in the dual link style. | 3545 | * at which modes should be set up in the dual link style. |
| 3546 | * | 3546 | * |
| 3547 | * Following the header, the BMP (ver 0xa) table has several records, | 3547 | * Following the header, the BMP (ver 0xa) table has several records, |
| 3548 | * indexed by a seperate xlat table, indexed in turn by the fp strap in | 3548 | * indexed by a separate xlat table, indexed in turn by the fp strap in |
| 3549 | * EXTDEV_BOOT. Each record had a config byte, followed by 6 script | 3549 | * EXTDEV_BOOT. Each record had a config byte, followed by 6 script |
| 3550 | * numbers for use by INIT_SUB which controlled panel init and power, | 3550 | * numbers for use by INIT_SUB which controlled panel init and power, |
| 3551 | * and finally a dword of ms to sleep between power off and on | 3551 | * and finally a dword of ms to sleep between power off and on |
diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.h b/drivers/gpu/drm/nouveau/nouveau_drv.h index 5f8d987af363..4b9aaf2a8d0f 100644 --- a/drivers/gpu/drm/nouveau/nouveau_drv.h +++ b/drivers/gpu/drm/nouveau/nouveau_drv.h | |||
| @@ -553,7 +553,7 @@ struct drm_nouveau_private { | |||
| 553 | uint32_t ramro_offset; | 553 | uint32_t ramro_offset; |
| 554 | uint32_t ramro_size; | 554 | uint32_t ramro_size; |
| 555 | 555 | ||
| 556 | /* base physical adresses */ | 556 | /* base physical addresses */ |
| 557 | uint64_t fb_phys; | 557 | uint64_t fb_phys; |
| 558 | uint64_t fb_available_size; | 558 | uint64_t fb_available_size; |
| 559 | uint64_t fb_mappable_pages; | 559 | uint64_t fb_mappable_pages; |
diff --git a/drivers/gpu/drm/radeon/radeon_state.c b/drivers/gpu/drm/radeon/radeon_state.c index 3c32f840dcd2..40ab6d9c3736 100644 --- a/drivers/gpu/drm/radeon/radeon_state.c +++ b/drivers/gpu/drm/radeon/radeon_state.c | |||
| @@ -1093,7 +1093,7 @@ static void radeon_cp_dispatch_clear(struct drm_device * dev, | |||
| 1093 | /* judging by the first tile offset needed, could possibly | 1093 | /* judging by the first tile offset needed, could possibly |
| 1094 | directly address/clear 4x4 tiles instead of 8x2 * 4x4 | 1094 | directly address/clear 4x4 tiles instead of 8x2 * 4x4 |
| 1095 | macro tiles, though would still need clear mask for | 1095 | macro tiles, though would still need clear mask for |
| 1096 | right/bottom if truely 4x4 granularity is desired ? */ | 1096 | right/bottom if truly 4x4 granularity is desired ? */ |
| 1097 | OUT_RING(tileoffset * 16); | 1097 | OUT_RING(tileoffset * 16); |
| 1098 | /* the number of tiles to clear */ | 1098 | /* the number of tiles to clear */ |
| 1099 | OUT_RING(nrtilesx + 1); | 1099 | OUT_RING(nrtilesx + 1); |
diff --git a/drivers/gpu/drm/via/via_irq.c b/drivers/gpu/drm/via/via_irq.c index 5935b8842e86..34079f251cd4 100644 --- a/drivers/gpu/drm/via/via_irq.c +++ b/drivers/gpu/drm/via/via_irq.c | |||
| @@ -150,7 +150,7 @@ irqreturn_t via_driver_irq_handler(DRM_IRQ_ARGS) | |||
| 150 | cur_irq++; | 150 | cur_irq++; |
| 151 | } | 151 | } |
| 152 | 152 | ||
| 153 | /* Acknowlege interrupts */ | 153 | /* Acknowledge interrupts */ |
| 154 | VIA_WRITE(VIA_REG_INTERRUPT, status); | 154 | VIA_WRITE(VIA_REG_INTERRUPT, status); |
| 155 | 155 | ||
| 156 | 156 | ||
| @@ -165,7 +165,7 @@ static __inline__ void viadrv_acknowledge_irqs(drm_via_private_t * dev_priv) | |||
| 165 | u32 status; | 165 | u32 status; |
| 166 | 166 | ||
| 167 | if (dev_priv) { | 167 | if (dev_priv) { |
| 168 | /* Acknowlege interrupts */ | 168 | /* Acknowledge interrupts */ |
| 169 | status = VIA_READ(VIA_REG_INTERRUPT); | 169 | status = VIA_READ(VIA_REG_INTERRUPT); |
| 170 | VIA_WRITE(VIA_REG_INTERRUPT, status | | 170 | VIA_WRITE(VIA_REG_INTERRUPT, status | |
| 171 | dev_priv->irq_pending_mask); | 171 | dev_priv->irq_pending_mask); |
diff --git a/drivers/i2c/algos/i2c-algo-pcf.c b/drivers/i2c/algos/i2c-algo-pcf.c index 7ce75775ec73..6b6bd06202b2 100644 --- a/drivers/i2c/algos/i2c-algo-pcf.c +++ b/drivers/i2c/algos/i2c-algo-pcf.c | |||
| @@ -176,7 +176,7 @@ static int pcf_init_8584 (struct i2c_algo_pcf_data *adap) | |||
| 176 | */ | 176 | */ |
| 177 | if (((temp = get_pcf(adap, 1)) & 0x7f) != (0)) { | 177 | if (((temp = get_pcf(adap, 1)) & 0x7f) != (0)) { |
| 178 | DEB2(printk(KERN_ERR "i2c-algo-pcf.o: PCF detection failed -- can't select S0 (0x%02x).\n", temp)); | 178 | DEB2(printk(KERN_ERR "i2c-algo-pcf.o: PCF detection failed -- can't select S0 (0x%02x).\n", temp)); |
| 179 | return -ENXIO; /* definetly not PCF8584 */ | 179 | return -ENXIO; /* definitely not PCF8584 */ |
| 180 | } | 180 | } |
| 181 | 181 | ||
| 182 | /* load own address in S0, effective address is (own << 1) */ | 182 | /* load own address in S0, effective address is (own << 1) */ |
diff --git a/drivers/i2c/busses/i2c-pxa.c b/drivers/i2c/busses/i2c-pxa.c index 7647a20523a0..90ffbf6f9d4f 100644 --- a/drivers/i2c/busses/i2c-pxa.c +++ b/drivers/i2c/busses/i2c-pxa.c | |||
| @@ -12,7 +12,7 @@ | |||
| 12 | * | 12 | * |
| 13 | * History: | 13 | * History: |
| 14 | * Apr 2002: Initial version [CS] | 14 | * Apr 2002: Initial version [CS] |
| 15 | * Jun 2002: Properly seperated algo/adap [FB] | 15 | * Jun 2002: Properly separated algo/adap [FB] |
| 16 | * Jan 2003: Fixed several bugs concerning interrupt handling [Kai-Uwe Bloem] | 16 | * Jan 2003: Fixed several bugs concerning interrupt handling [Kai-Uwe Bloem] |
| 17 | * Jan 2003: added limited signal handling [Kai-Uwe Bloem] | 17 | * Jan 2003: added limited signal handling [Kai-Uwe Bloem] |
| 18 | * Sep 2004: Major rework to ensure efficient bus handling [RMK] | 18 | * Sep 2004: Major rework to ensure efficient bus handling [RMK] |
diff --git a/drivers/ieee1394/pcilynx.c b/drivers/ieee1394/pcilynx.c index 9555fd253865..bf47fee79808 100644 --- a/drivers/ieee1394/pcilynx.c +++ b/drivers/ieee1394/pcilynx.c | |||
| @@ -1452,7 +1452,7 @@ static int __devinit add_card(struct pci_dev *dev, | |||
| 1452 | PRINT(KERN_ERR, lynx->id, "unable to read bus info block from i2c"); | 1452 | PRINT(KERN_ERR, lynx->id, "unable to read bus info block from i2c"); |
| 1453 | } else { | 1453 | } else { |
| 1454 | PRINT(KERN_INFO, lynx->id, "got bus info block from serial eeprom"); | 1454 | PRINT(KERN_INFO, lynx->id, "got bus info block from serial eeprom"); |
| 1455 | /* FIXME: probably we shoud rewrite the max_rec, max_ROM(1394a), | 1455 | /* FIXME: probably we should rewrite the max_rec, max_ROM(1394a), |
| 1456 | * generation(1394a) and link_spd(1394a) field and recalculate | 1456 | * generation(1394a) and link_spd(1394a) field and recalculate |
| 1457 | * the CRC */ | 1457 | * the CRC */ |
| 1458 | 1458 | ||
diff --git a/drivers/infiniband/hw/ehca/ehca_qes.h b/drivers/infiniband/hw/ehca/ehca_qes.h index 5d28e3e98a20..90c4efa67586 100644 --- a/drivers/infiniband/hw/ehca/ehca_qes.h +++ b/drivers/infiniband/hw/ehca/ehca_qes.h | |||
| @@ -46,7 +46,7 @@ | |||
| 46 | 46 | ||
| 47 | #include "ehca_tools.h" | 47 | #include "ehca_tools.h" |
| 48 | 48 | ||
| 49 | /* virtual scatter gather entry to specify remote adresses with length */ | 49 | /* virtual scatter gather entry to specify remote addresses with length */ |
| 50 | struct ehca_vsgentry { | 50 | struct ehca_vsgentry { |
| 51 | u64 vaddr; | 51 | u64 vaddr; |
| 52 | u32 lkey; | 52 | u32 lkey; |
| @@ -148,7 +148,7 @@ struct ehca_wqe { | |||
| 148 | u32 immediate_data; | 148 | u32 immediate_data; |
| 149 | union { | 149 | union { |
| 150 | struct { | 150 | struct { |
| 151 | u64 remote_virtual_adress; | 151 | u64 remote_virtual_address; |
| 152 | u32 rkey; | 152 | u32 rkey; |
| 153 | u32 reserved; | 153 | u32 reserved; |
| 154 | u64 atomic_1st_op_dma_len; | 154 | u64 atomic_1st_op_dma_len; |
diff --git a/drivers/infiniband/hw/ehca/ehca_reqs.c b/drivers/infiniband/hw/ehca/ehca_reqs.c index e3ec7fdd67bd..9a3fbfca9b41 100644 --- a/drivers/infiniband/hw/ehca/ehca_reqs.c +++ b/drivers/infiniband/hw/ehca/ehca_reqs.c | |||
| @@ -269,7 +269,7 @@ static inline int ehca_write_swqe(struct ehca_qp *qp, | |||
| 269 | /* no break is intentional here */ | 269 | /* no break is intentional here */ |
| 270 | case IB_QPT_RC: | 270 | case IB_QPT_RC: |
| 271 | /* TODO: atomic not implemented */ | 271 | /* TODO: atomic not implemented */ |
| 272 | wqe_p->u.nud.remote_virtual_adress = | 272 | wqe_p->u.nud.remote_virtual_address = |
| 273 | send_wr->wr.rdma.remote_addr; | 273 | send_wr->wr.rdma.remote_addr; |
| 274 | wqe_p->u.nud.rkey = send_wr->wr.rdma.rkey; | 274 | wqe_p->u.nud.rkey = send_wr->wr.rdma.rkey; |
| 275 | 275 | ||
diff --git a/drivers/input/misc/yealink.h b/drivers/input/misc/yealink.h index 48af0be9cbdf..1e0f52397010 100644 --- a/drivers/input/misc/yealink.h +++ b/drivers/input/misc/yealink.h | |||
| @@ -127,7 +127,7 @@ struct yld_ctl_packet { | |||
| 127 | * yld_status struct. | 127 | * yld_status struct. |
| 128 | */ | 128 | */ |
| 129 | 129 | ||
| 130 | /* LCD, each segment must be driven seperately. | 130 | /* LCD, each segment must be driven separately. |
| 131 | * | 131 | * |
| 132 | * Layout: | 132 | * Layout: |
| 133 | * | 133 | * |
diff --git a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c index b54aee7cd9e3..ff4d77c4de11 100644 --- a/drivers/input/serio/i8042.c +++ b/drivers/input/serio/i8042.c | |||
| @@ -430,7 +430,7 @@ static bool i8042_filter(unsigned char data, unsigned char str, | |||
| 430 | } | 430 | } |
| 431 | 431 | ||
| 432 | if (i8042_platform_filter && i8042_platform_filter(data, str, serio)) { | 432 | if (i8042_platform_filter && i8042_platform_filter(data, str, serio)) { |
| 433 | dbg("Filtered out by platfrom filter\n"); | 433 | dbg("Filtered out by platform filter\n"); |
| 434 | return true; | 434 | return true; |
| 435 | } | 435 | } |
| 436 | 436 | ||
diff --git a/drivers/input/tablet/aiptek.c b/drivers/input/tablet/aiptek.c index 7d005a3616d7..4be039d7dcad 100644 --- a/drivers/input/tablet/aiptek.c +++ b/drivers/input/tablet/aiptek.c | |||
| @@ -362,7 +362,7 @@ static const int macroKeyEvents[] = { | |||
| 362 | }; | 362 | }; |
| 363 | 363 | ||
| 364 | /*********************************************************************** | 364 | /*********************************************************************** |
| 365 | * Map values to strings and back. Every map shoudl have the following | 365 | * Map values to strings and back. Every map should have the following |
| 366 | * as its last element: { NULL, AIPTEK_INVALID_VALUE }. | 366 | * as its last element: { NULL, AIPTEK_INVALID_VALUE }. |
| 367 | */ | 367 | */ |
| 368 | #define AIPTEK_INVALID_VALUE -1 | 368 | #define AIPTEK_INVALID_VALUE -1 |
diff --git a/drivers/isdn/hardware/mISDN/mISDNisar.c b/drivers/isdn/hardware/mISDN/mISDNisar.c index 09095c747110..f0bc6fa95809 100644 --- a/drivers/isdn/hardware/mISDN/mISDNisar.c +++ b/drivers/isdn/hardware/mISDN/mISDNisar.c | |||
| @@ -1712,13 +1712,13 @@ mISDNisar_init(struct isar_hw *isar, void *hw) | |||
| 1712 | } | 1712 | } |
| 1713 | EXPORT_SYMBOL(mISDNisar_init); | 1713 | EXPORT_SYMBOL(mISDNisar_init); |
| 1714 | 1714 | ||
| 1715 | static int isar_mod_init(void) | 1715 | static int __init isar_mod_init(void) |
| 1716 | { | 1716 | { |
| 1717 | pr_notice("mISDN: ISAR driver Rev. %s\n", ISAR_REV); | 1717 | pr_notice("mISDN: ISAR driver Rev. %s\n", ISAR_REV); |
| 1718 | return 0; | 1718 | return 0; |
| 1719 | } | 1719 | } |
| 1720 | 1720 | ||
| 1721 | static void isar_mod_cleanup(void) | 1721 | static void __exit isar_mod_cleanup(void) |
| 1722 | { | 1722 | { |
| 1723 | pr_notice("mISDN: ISAR module unloaded\n"); | 1723 | pr_notice("mISDN: ISAR module unloaded\n"); |
| 1724 | } | 1724 | } |
diff --git a/drivers/isdn/i4l/isdn_common.c b/drivers/isdn/i4l/isdn_common.c index adb1e8c36b46..00c60e2e0ff7 100644 --- a/drivers/isdn/i4l/isdn_common.c +++ b/drivers/isdn/i4l/isdn_common.c | |||
| @@ -1347,7 +1347,7 @@ isdn_ioctl(struct inode *inode, struct file *file, uint cmd, ulong arg) | |||
| 1347 | /* | 1347 | /* |
| 1348 | * isdn net devices manage lots of configuration variables as linked lists. | 1348 | * isdn net devices manage lots of configuration variables as linked lists. |
| 1349 | * Those lists must only be manipulated from user space. Some of the ioctl's | 1349 | * Those lists must only be manipulated from user space. Some of the ioctl's |
| 1350 | * service routines access user space and are not atomic. Therefor, ioctl's | 1350 | * service routines access user space and are not atomic. Therefore, ioctl's |
| 1351 | * manipulating the lists and ioctl's sleeping while accessing the lists | 1351 | * manipulating the lists and ioctl's sleeping while accessing the lists |
| 1352 | * are serialized by means of a semaphore. | 1352 | * are serialized by means of a semaphore. |
| 1353 | */ | 1353 | */ |
diff --git a/drivers/isdn/mISDN/dsp_core.c b/drivers/isdn/mISDN/dsp_core.c index 43ff4d3b046e..6eac588e0a37 100644 --- a/drivers/isdn/mISDN/dsp_core.c +++ b/drivers/isdn/mISDN/dsp_core.c | |||
| @@ -1114,7 +1114,7 @@ static struct Bprotocol DSP = { | |||
| 1114 | .create = dspcreate | 1114 | .create = dspcreate |
| 1115 | }; | 1115 | }; |
| 1116 | 1116 | ||
| 1117 | static int dsp_init(void) | 1117 | static int __init dsp_init(void) |
| 1118 | { | 1118 | { |
| 1119 | int err; | 1119 | int err; |
| 1120 | int tics; | 1120 | int tics; |
| @@ -1212,7 +1212,7 @@ static int dsp_init(void) | |||
| 1212 | } | 1212 | } |
| 1213 | 1213 | ||
| 1214 | 1214 | ||
| 1215 | static void dsp_cleanup(void) | 1215 | static void __exit dsp_cleanup(void) |
| 1216 | { | 1216 | { |
| 1217 | mISDN_unregister_Bprotocol(&DSP); | 1217 | mISDN_unregister_Bprotocol(&DSP); |
| 1218 | 1218 | ||
diff --git a/drivers/isdn/mISDN/l1oip_core.c b/drivers/isdn/mISDN/l1oip_core.c index f1e8af54dff0..325b1ad7d4b8 100644 --- a/drivers/isdn/mISDN/l1oip_core.c +++ b/drivers/isdn/mISDN/l1oip_core.c | |||
| @@ -477,7 +477,7 @@ l1oip_socket_parse(struct l1oip *hc, struct sockaddr_in *sin, u8 *buf, int len) | |||
| 477 | printk(KERN_DEBUG "%s: received frame, parsing... (%d)\n", | 477 | printk(KERN_DEBUG "%s: received frame, parsing... (%d)\n", |
| 478 | __func__, len); | 478 | __func__, len); |
| 479 | 479 | ||
| 480 | /* check lenght */ | 480 | /* check length */ |
| 481 | if (len < 1+1+2) { | 481 | if (len < 1+1+2) { |
| 482 | printk(KERN_WARNING "%s: packet error - length %d below " | 482 | printk(KERN_WARNING "%s: packet error - length %d below " |
| 483 | "4 bytes\n", __func__, len); | 483 | "4 bytes\n", __func__, len); |
| @@ -1509,7 +1509,7 @@ l1oip_init(void) | |||
| 1509 | printk(KERN_DEBUG "%s: interface %d is %s with %s.\n", | 1509 | printk(KERN_DEBUG "%s: interface %d is %s with %s.\n", |
| 1510 | __func__, l1oip_cnt, pri ? "PRI" : "BRI", | 1510 | __func__, l1oip_cnt, pri ? "PRI" : "BRI", |
| 1511 | bundle ? "bundled IP packet for all B-channels" : | 1511 | bundle ? "bundled IP packet for all B-channels" : |
| 1512 | "seperate IP packets for every B-channel"); | 1512 | "separate IP packets for every B-channel"); |
| 1513 | 1513 | ||
| 1514 | hc = kzalloc(sizeof(struct l1oip), GFP_ATOMIC); | 1514 | hc = kzalloc(sizeof(struct l1oip), GFP_ATOMIC); |
| 1515 | if (!hc) { | 1515 | if (!hc) { |
diff --git a/drivers/isdn/sc/hardware.h b/drivers/isdn/sc/hardware.h index 9e6d5302bf8e..627324856ead 100644 --- a/drivers/isdn/sc/hardware.h +++ b/drivers/isdn/sc/hardware.h | |||
| @@ -87,7 +87,7 @@ | |||
| 87 | #define BRI_CHANNELS 2 /* Number of B channels */ | 87 | #define BRI_CHANNELS 2 /* Number of B channels */ |
| 88 | #define BRI_BASEPG_VAL 0x98 | 88 | #define BRI_BASEPG_VAL 0x98 |
| 89 | #define BRI_MAGIC 0x60000 /* Magic Number */ | 89 | #define BRI_MAGIC 0x60000 /* Magic Number */ |
| 90 | #define BRI_MEMSIZE 0x10000 /* Ammount of RAM (64K) */ | 90 | #define BRI_MEMSIZE 0x10000 /* Amount of RAM (64K) */ |
| 91 | #define BRI_PARTNO "72-029" | 91 | #define BRI_PARTNO "72-029" |
| 92 | #define BRI_FEATURES ISDN_FEATURE_L2_HDLC | ISDN_FEATURE_L3_TRANS; | 92 | #define BRI_FEATURES ISDN_FEATURE_L2_HDLC | ISDN_FEATURE_L3_TRANS; |
| 93 | /* | 93 | /* |
diff --git a/drivers/media/dvb/dvb-core/dvb_frontend.h b/drivers/media/dvb/dvb-core/dvb_frontend.h index 52e4ce4304ee..80dda308ff74 100644 --- a/drivers/media/dvb/dvb-core/dvb_frontend.h +++ b/drivers/media/dvb/dvb-core/dvb_frontend.h | |||
| @@ -214,14 +214,14 @@ struct dvb_tuner_ops { | |||
| 214 | int (*get_status)(struct dvb_frontend *fe, u32 *status); | 214 | int (*get_status)(struct dvb_frontend *fe, u32 *status); |
| 215 | int (*get_rf_strength)(struct dvb_frontend *fe, u16 *strength); | 215 | int (*get_rf_strength)(struct dvb_frontend *fe, u16 *strength); |
| 216 | 216 | ||
| 217 | /** These are provided seperately from set_params in order to facilitate silicon | 217 | /** These are provided separately from set_params in order to facilitate silicon |
| 218 | * tuners which require sophisticated tuning loops, controlling each parameter seperately. */ | 218 | * tuners which require sophisticated tuning loops, controlling each parameter separately. */ |
| 219 | int (*set_frequency)(struct dvb_frontend *fe, u32 frequency); | 219 | int (*set_frequency)(struct dvb_frontend *fe, u32 frequency); |
| 220 | int (*set_bandwidth)(struct dvb_frontend *fe, u32 bandwidth); | 220 | int (*set_bandwidth)(struct dvb_frontend *fe, u32 bandwidth); |
| 221 | 221 | ||
| 222 | /* | 222 | /* |
| 223 | * These are provided seperately from set_params in order to facilitate silicon | 223 | * These are provided separately from set_params in order to facilitate silicon |
| 224 | * tuners which require sophisticated tuning loops, controlling each parameter seperately. | 224 | * tuners which require sophisticated tuning loops, controlling each parameter separately. |
| 225 | */ | 225 | */ |
| 226 | int (*set_state)(struct dvb_frontend *fe, enum tuner_param param, struct tuner_state *state); | 226 | int (*set_state)(struct dvb_frontend *fe, enum tuner_param param, struct tuner_state *state); |
| 227 | int (*get_state)(struct dvb_frontend *fe, enum tuner_param param, struct tuner_state *state); | 227 | int (*get_state)(struct dvb_frontend *fe, enum tuner_param param, struct tuner_state *state); |
diff --git a/drivers/media/video/bt8xx/bttv-cards.c b/drivers/media/video/bt8xx/bttv-cards.c index 12279f6d9bc4..716870ae85d5 100644 --- a/drivers/media/video/bt8xx/bttv-cards.c +++ b/drivers/media/video/bt8xx/bttv-cards.c | |||
| @@ -4404,7 +4404,7 @@ static void rv605_muxsel(struct bttv *btv, unsigned int input) | |||
| 4404 | /* Tibet Systems 'Progress DVR' CS16 muxsel helper [Chris Fanning] | 4404 | /* Tibet Systems 'Progress DVR' CS16 muxsel helper [Chris Fanning] |
| 4405 | * | 4405 | * |
| 4406 | * The CS16 (available on eBay cheap) is a PCI board with four Fusion | 4406 | * The CS16 (available on eBay cheap) is a PCI board with four Fusion |
| 4407 | * 878A chips, a PCI bridge, an Atmel microcontroller, four sync seperator | 4407 | * 878A chips, a PCI bridge, an Atmel microcontroller, four sync separator |
| 4408 | * chips, ten eight input analog multiplexors, a not chip and a few | 4408 | * chips, ten eight input analog multiplexors, a not chip and a few |
| 4409 | * other components. | 4409 | * other components. |
| 4410 | * | 4410 | * |
| @@ -4426,7 +4426,7 @@ static void rv605_muxsel(struct bttv *btv, unsigned int input) | |||
| 4426 | * | 4426 | * |
| 4427 | * There is an ATMEL microcontroller with an 8031 core on board. I have not | 4427 | * There is an ATMEL microcontroller with an 8031 core on board. I have not |
| 4428 | * determined what function (if any) it provides. With the microcontroller | 4428 | * determined what function (if any) it provides. With the microcontroller |
| 4429 | * and sync seperator chips a guess is that it might have to do with video | 4429 | * and sync separator chips a guess is that it might have to do with video |
| 4430 | * switching and maybe some digital I/O. | 4430 | * switching and maybe some digital I/O. |
| 4431 | */ | 4431 | */ |
| 4432 | static void tibetCS16_muxsel(struct bttv *btv, unsigned int input) | 4432 | static void tibetCS16_muxsel(struct bttv *btv, unsigned int input) |
diff --git a/drivers/media/video/gspca/ov519.c b/drivers/media/video/gspca/ov519.c index bc4ced6c013b..f36e11a0458d 100644 --- a/drivers/media/video/gspca/ov519.c +++ b/drivers/media/video/gspca/ov519.c | |||
| @@ -512,7 +512,7 @@ static const struct v4l2_pix_format ovfx2_ov3610_mode[] = { | |||
| 512 | /* | 512 | /* |
| 513 | * The FX2 chip does not give us a zero length read at end of frame. | 513 | * The FX2 chip does not give us a zero length read at end of frame. |
| 514 | * It does, however, give a short read at the end of a frame, if | 514 | * It does, however, give a short read at the end of a frame, if |
| 515 | * neccessary, rather than run two frames together. | 515 | * necessary, rather than run two frames together. |
| 516 | * | 516 | * |
| 517 | * By choosing the right bulk transfer size, we are guaranteed to always | 517 | * By choosing the right bulk transfer size, we are guaranteed to always |
| 518 | * get a short read for the last read of each frame. Frame sizes are | 518 | * get a short read for the last read of each frame. Frame sizes are |
diff --git a/drivers/media/video/pwc/philips.txt b/drivers/media/video/pwc/philips.txt index f9f3584281d8..d38dd791511e 100644 --- a/drivers/media/video/pwc/philips.txt +++ b/drivers/media/video/pwc/philips.txt | |||
| @@ -33,7 +33,7 @@ a lot of extra information, a FAQ, and the binary plugin 'PWCX'. This plugin | |||
| 33 | contains decompression routines that allow you to use higher image sizes and | 33 | contains decompression routines that allow you to use higher image sizes and |
| 34 | framerates; in addition the webcam uses less bandwidth on the USB bus (handy | 34 | framerates; in addition the webcam uses less bandwidth on the USB bus (handy |
| 35 | if you want to run more than 1 camera simultaneously). These routines fall | 35 | if you want to run more than 1 camera simultaneously). These routines fall |
| 36 | under a NDA, and may therefor not be distributed as source; however, its use | 36 | under a NDA, and may therefore not be distributed as source; however, its use |
| 37 | is completely optional. | 37 | is completely optional. |
| 38 | 38 | ||
| 39 | You can build this code either into your kernel, or as a module. I recommend | 39 | You can build this code either into your kernel, or as a module. I recommend |
diff --git a/drivers/media/video/sn9c102/sn9c102_sensor.h b/drivers/media/video/sn9c102/sn9c102_sensor.h index 4af7382da5c5..494957b10bac 100644 --- a/drivers/media/video/sn9c102/sn9c102_sensor.h +++ b/drivers/media/video/sn9c102/sn9c102_sensor.h | |||
| @@ -120,7 +120,7 @@ extern int sn9c102_write_regs(struct sn9c102_device*, const u8 valreg[][2], | |||
| 120 | /* | 120 | /* |
| 121 | Write multiple registers with constant values. For example: | 121 | Write multiple registers with constant values. For example: |
| 122 | sn9c102_write_const_regs(cam, {0x00, 0x14}, {0x60, 0x17}, {0x0f, 0x18}); | 122 | sn9c102_write_const_regs(cam, {0x00, 0x14}, {0x60, 0x17}, {0x0f, 0x18}); |
| 123 | Register adresses must be < 256. | 123 | Register addresses must be < 256. |
| 124 | */ | 124 | */ |
| 125 | #define sn9c102_write_const_regs(sn9c102_device, data...) \ | 125 | #define sn9c102_write_const_regs(sn9c102_device, data...) \ |
| 126 | ({ static const u8 _valreg[][2] = {data}; \ | 126 | ({ static const u8 _valreg[][2] = {data}; \ |
diff --git a/drivers/media/video/tea6420.c b/drivers/media/video/tea6420.c index 0446524d3543..6bf6bc7dbc7f 100644 --- a/drivers/media/video/tea6420.c +++ b/drivers/media/video/tea6420.c | |||
| @@ -6,7 +6,7 @@ | |||
| 6 | 6 | ||
| 7 | The tea6420 is a bus controlled audio-matrix with 5 stereo inputs, | 7 | The tea6420 is a bus controlled audio-matrix with 5 stereo inputs, |
| 8 | 4 stereo outputs and gain control for each output. | 8 | 4 stereo outputs and gain control for each output. |
| 9 | It is cascadable, i.e. it can be found at the adresses 0x98 | 9 | It is cascadable, i.e. it can be found at the addresses 0x98 |
| 10 | and 0x9a on the i2c-bus. | 10 | and 0x9a on the i2c-bus. |
| 11 | 11 | ||
| 12 | For detailed informations download the specifications directly | 12 | For detailed informations download the specifications directly |
diff --git a/drivers/message/i2o/iop.c b/drivers/message/i2o/iop.c index e5ab62141503..ef5ce2676f05 100644 --- a/drivers/message/i2o/iop.c +++ b/drivers/message/i2o/iop.c | |||
| @@ -539,7 +539,7 @@ static int i2o_iop_reset(struct i2o_controller *c) | |||
| 539 | * which is indeterminate. We need to wait until the IOP has | 539 | * which is indeterminate. We need to wait until the IOP has |
| 540 | * rebooted before we can let the system talk to it. We read | 540 | * rebooted before we can let the system talk to it. We read |
| 541 | * the inbound Free_List until a message is available. If we | 541 | * the inbound Free_List until a message is available. If we |
| 542 | * can't read one in the given ammount of time, we assume the | 542 | * can't read one in the given amount of time, we assume the |
| 543 | * IOP could not reboot properly. | 543 | * IOP could not reboot properly. |
| 544 | */ | 544 | */ |
| 545 | osm_debug("%s: Reset in progress, waiting for reboot...\n", | 545 | osm_debug("%s: Reset in progress, waiting for reboot...\n", |
diff --git a/drivers/mfd/sm501.c b/drivers/mfd/sm501.c index dc9ea95c0561..ff0718efb0ae 100644 --- a/drivers/mfd/sm501.c +++ b/drivers/mfd/sm501.c | |||
| @@ -523,7 +523,7 @@ unsigned long sm501_set_clock(struct device *dev, | |||
| 523 | unsigned long clock = readl(sm->regs + SM501_CURRENT_CLOCK); | 523 | unsigned long clock = readl(sm->regs + SM501_CURRENT_CLOCK); |
| 524 | unsigned char reg; | 524 | unsigned char reg; |
| 525 | unsigned int pll_reg = 0; | 525 | unsigned int pll_reg = 0; |
| 526 | unsigned long sm501_freq; /* the actual frequency acheived */ | 526 | unsigned long sm501_freq; /* the actual frequency achieved */ |
| 527 | 527 | ||
| 528 | struct sm501_clock to; | 528 | struct sm501_clock to; |
| 529 | 529 | ||
| @@ -533,7 +533,7 @@ unsigned long sm501_set_clock(struct device *dev, | |||
| 533 | 533 | ||
| 534 | switch (clksrc) { | 534 | switch (clksrc) { |
| 535 | case SM501_CLOCK_P2XCLK: | 535 | case SM501_CLOCK_P2XCLK: |
| 536 | /* This clock is divided in half so to achive the | 536 | /* This clock is divided in half so to achieve the |
| 537 | * requested frequency the value must be multiplied by | 537 | * requested frequency the value must be multiplied by |
| 538 | * 2. This clock also has an additional pre divisor */ | 538 | * 2. This clock also has an additional pre divisor */ |
| 539 | 539 | ||
| @@ -562,7 +562,7 @@ unsigned long sm501_set_clock(struct device *dev, | |||
| 562 | break; | 562 | break; |
| 563 | 563 | ||
| 564 | case SM501_CLOCK_V2XCLK: | 564 | case SM501_CLOCK_V2XCLK: |
| 565 | /* This clock is divided in half so to achive the | 565 | /* This clock is divided in half so to achieve the |
| 566 | * requested frequency the value must be multiplied by 2. */ | 566 | * requested frequency the value must be multiplied by 2. */ |
| 567 | 567 | ||
| 568 | sm501_freq = (sm501_select_clock(2 * req_freq, &to, 3) / 2); | 568 | sm501_freq = (sm501_select_clock(2 * req_freq, &to, 3) / 2); |
| @@ -648,7 +648,7 @@ unsigned long sm501_find_clock(struct device *dev, | |||
| 648 | unsigned long req_freq) | 648 | unsigned long req_freq) |
| 649 | { | 649 | { |
| 650 | struct sm501_devdata *sm = dev_get_drvdata(dev); | 650 | struct sm501_devdata *sm = dev_get_drvdata(dev); |
| 651 | unsigned long sm501_freq; /* the frequency achiveable by the 501 */ | 651 | unsigned long sm501_freq; /* the frequency achieveable by the 501 */ |
| 652 | struct sm501_clock to; | 652 | struct sm501_clock to; |
| 653 | 653 | ||
| 654 | switch (clksrc) { | 654 | switch (clksrc) { |
diff --git a/drivers/mmc/card/sdio_uart.c b/drivers/mmc/card/sdio_uart.c index 3fab78ba8952..723e50894db9 100644 --- a/drivers/mmc/card/sdio_uart.c +++ b/drivers/mmc/card/sdio_uart.c | |||
| @@ -575,7 +575,7 @@ static int uart_carrier_raised(struct tty_port *tport) | |||
| 575 | struct sdio_uart_port *port = | 575 | struct sdio_uart_port *port = |
| 576 | container_of(tport, struct sdio_uart_port, port); | 576 | container_of(tport, struct sdio_uart_port, port); |
| 577 | unsigned int ret = sdio_uart_claim_func(port); | 577 | unsigned int ret = sdio_uart_claim_func(port); |
| 578 | if (ret) /* Missing hardware shoudn't block for carrier */ | 578 | if (ret) /* Missing hardware shouldn't block for carrier */ |
| 579 | return 1; | 579 | return 1; |
| 580 | ret = sdio_uart_get_mctrl(port); | 580 | ret = sdio_uart_get_mctrl(port); |
| 581 | sdio_uart_release_func(port); | 581 | sdio_uart_release_func(port); |
diff --git a/drivers/mmc/host/mxcmmc.c b/drivers/mmc/host/mxcmmc.c index 60a2b69e54f5..16cc91c827c9 100644 --- a/drivers/mmc/host/mxcmmc.c +++ b/drivers/mmc/host/mxcmmc.c | |||
| @@ -4,7 +4,7 @@ | |||
| 4 | * This is a driver for the SDHC controller found in Freescale MX2/MX3 | 4 | * This is a driver for the SDHC controller found in Freescale MX2/MX3 |
| 5 | * SoCs. It is basically the same hardware as found on MX1 (imxmmc.c). | 5 | * SoCs. It is basically the same hardware as found on MX1 (imxmmc.c). |
| 6 | * Unlike the hardware found on MX1, this hardware just works and does | 6 | * Unlike the hardware found on MX1, this hardware just works and does |
| 7 | * not need all the quirks found in imxmmc.c, hence the seperate driver. | 7 | * not need all the quirks found in imxmmc.c, hence the separate driver. |
| 8 | * | 8 | * |
| 9 | * Copyright (C) 2008 Sascha Hauer, Pengutronix <s.hauer@pengutronix.de> | 9 | * Copyright (C) 2008 Sascha Hauer, Pengutronix <s.hauer@pengutronix.de> |
| 10 | * Copyright (C) 2006 Pavel Pisa, PiKRON <ppisa@pikron.com> | 10 | * Copyright (C) 2006 Pavel Pisa, PiKRON <ppisa@pikron.com> |
diff --git a/drivers/mtd/chips/cfi_util.c b/drivers/mtd/chips/cfi_util.c index ca584d0380b4..ca584d0380b4 100755..100644 --- a/drivers/mtd/chips/cfi_util.c +++ b/drivers/mtd/chips/cfi_util.c | |||
diff --git a/drivers/mtd/chips/jedec_probe.c b/drivers/mtd/chips/jedec_probe.c index 1bec5e1ce6ac..8db1148dfa47 100644 --- a/drivers/mtd/chips/jedec_probe.c +++ b/drivers/mtd/chips/jedec_probe.c | |||
| @@ -226,7 +226,7 @@ struct unlock_addr { | |||
| 226 | * exists, but is for MTD_UADDR_NOT_SUPPORTED - and, therefore, | 226 | * exists, but is for MTD_UADDR_NOT_SUPPORTED - and, therefore, |
| 227 | * should not be used. The problem is that structures with | 227 | * should not be used. The problem is that structures with |
| 228 | * initializers have extra fields initialized to 0. It is _very_ | 228 | * initializers have extra fields initialized to 0. It is _very_ |
| 229 | * desireable to have the unlock address entries for unsupported | 229 | * desirable to have the unlock address entries for unsupported |
| 230 | * data widths automatically initialized - that means that | 230 | * data widths automatically initialized - that means that |
| 231 | * MTD_UADDR_NOT_SUPPORTED must be 0 and the first entry here | 231 | * MTD_UADDR_NOT_SUPPORTED must be 0 and the first entry here |
| 232 | * must go unused. | 232 | * must go unused. |
diff --git a/drivers/mtd/inftlcore.c b/drivers/mtd/inftlcore.c index 8aca5523a337..8aca5523a337 100755..100644 --- a/drivers/mtd/inftlcore.c +++ b/drivers/mtd/inftlcore.c | |||
diff --git a/drivers/mtd/maps/plat-ram.c b/drivers/mtd/maps/plat-ram.c index dafb91944e70..76a76be5a7bd 100644 --- a/drivers/mtd/maps/plat-ram.c +++ b/drivers/mtd/maps/plat-ram.c | |||
| @@ -4,7 +4,7 @@ | |||
| 4 | * http://www.simtec.co.uk/products/SWLINUX/ | 4 | * http://www.simtec.co.uk/products/SWLINUX/ |
| 5 | * Ben Dooks <ben@simtec.co.uk> | 5 | * Ben Dooks <ben@simtec.co.uk> |
| 6 | * | 6 | * |
| 7 | * Generic platfrom device based RAM map | 7 | * Generic platform device based RAM map |
| 8 | * | 8 | * |
| 9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
| 10 | * it under the terms of the GNU General Public License as published by | 10 | * it under the terms of the GNU General Public License as published by |
diff --git a/drivers/mtd/nand/bcm_umi_nand.c b/drivers/mtd/nand/bcm_umi_nand.c index 087bcd745bb7..7d1cca7a31a9 100644 --- a/drivers/mtd/nand/bcm_umi_nand.c +++ b/drivers/mtd/nand/bcm_umi_nand.c | |||
| @@ -381,7 +381,7 @@ static int __devinit bcm_umi_nand_probe(struct platform_device *pdev) | |||
| 381 | if (!r) | 381 | if (!r) |
| 382 | return -ENXIO; | 382 | return -ENXIO; |
| 383 | 383 | ||
| 384 | /* map physical adress */ | 384 | /* map physical address */ |
| 385 | bcm_umi_io_base = ioremap(r->start, r->end - r->start + 1); | 385 | bcm_umi_io_base = ioremap(r->start, r->end - r->start + 1); |
| 386 | 386 | ||
| 387 | if (!bcm_umi_io_base) { | 387 | if (!bcm_umi_io_base) { |
| @@ -525,7 +525,7 @@ static int bcm_umi_nand_remove(struct platform_device *pdev) | |||
| 525 | /* Release resources, unregister device */ | 525 | /* Release resources, unregister device */ |
| 526 | nand_release(board_mtd); | 526 | nand_release(board_mtd); |
| 527 | 527 | ||
| 528 | /* unmap physical adress */ | 528 | /* unmap physical address */ |
| 529 | iounmap(bcm_umi_io_base); | 529 | iounmap(bcm_umi_io_base); |
| 530 | 530 | ||
| 531 | /* Free the MTD device structure */ | 531 | /* Free the MTD device structure */ |
diff --git a/drivers/mtd/nand/mxc_nand.c b/drivers/mtd/nand/mxc_nand.c index 45dec5770da0..b2900d8406d3 100644 --- a/drivers/mtd/nand/mxc_nand.c +++ b/drivers/mtd/nand/mxc_nand.c | |||
| @@ -507,7 +507,7 @@ static void mxc_do_addr_cycle(struct mtd_info *mtd, int column, int page_addr) | |||
| 507 | * MXC NANDFC can only perform full page+spare or | 507 | * MXC NANDFC can only perform full page+spare or |
| 508 | * spare-only read/write. When the upper layers | 508 | * spare-only read/write. When the upper layers |
| 509 | * layers perform a read/write buf operation, | 509 | * layers perform a read/write buf operation, |
| 510 | * we will used the saved column adress to index into | 510 | * we will used the saved column address to index into |
| 511 | * the full page. | 511 | * the full page. |
| 512 | */ | 512 | */ |
| 513 | send_addr(host, 0, page_addr == -1); | 513 | send_addr(host, 0, page_addr == -1); |
diff --git a/drivers/net/atlx/atl2.h b/drivers/net/atlx/atl2.h index d918bbe621ea..927e4de6474d 100644 --- a/drivers/net/atlx/atl2.h +++ b/drivers/net/atlx/atl2.h | |||
| @@ -442,7 +442,7 @@ struct atl2_hw { | |||
| 442 | struct atl2_ring_header { | 442 | struct atl2_ring_header { |
| 443 | /* pointer to the descriptor ring memory */ | 443 | /* pointer to the descriptor ring memory */ |
| 444 | void *desc; | 444 | void *desc; |
| 445 | /* physical adress of the descriptor ring */ | 445 | /* physical address of the descriptor ring */ |
| 446 | dma_addr_t dma; | 446 | dma_addr_t dma; |
| 447 | /* length of descriptor ring in bytes */ | 447 | /* length of descriptor ring in bytes */ |
| 448 | unsigned int size; | 448 | unsigned int size; |
diff --git a/drivers/net/chelsio/sge.c b/drivers/net/chelsio/sge.c index 71384114a4ed..55d99ca82f8a 100644 --- a/drivers/net/chelsio/sge.c +++ b/drivers/net/chelsio/sge.c | |||
| @@ -248,7 +248,7 @@ static void restart_sched(unsigned long); | |||
| 248 | * | 248 | * |
| 249 | * Interrupts are handled by a single CPU and it is likely that on a MP system | 249 | * Interrupts are handled by a single CPU and it is likely that on a MP system |
| 250 | * the application is migrated to another CPU. In that scenario, we try to | 250 | * the application is migrated to another CPU. In that scenario, we try to |
| 251 | * seperate the RX(in irq context) and TX state in order to decrease memory | 251 | * separate the RX(in irq context) and TX state in order to decrease memory |
| 252 | * contention. | 252 | * contention. |
| 253 | */ | 253 | */ |
| 254 | struct sge { | 254 | struct sge { |
diff --git a/drivers/net/cs89x0.c b/drivers/net/cs89x0.c index 14624019ce71..b0208e474f7e 100644 --- a/drivers/net/cs89x0.c +++ b/drivers/net/cs89x0.c | |||
| @@ -580,7 +580,7 @@ cs89x0_probe1(struct net_device *dev, int ioaddr, int modular) | |||
| 580 | } | 580 | } |
| 581 | 581 | ||
| 582 | #ifdef CONFIG_SH_HICOSH4 | 582 | #ifdef CONFIG_SH_HICOSH4 |
| 583 | /* truely reset the chip */ | 583 | /* truly reset the chip */ |
| 584 | writeword(ioaddr, ADD_PORT, 0x0114); | 584 | writeword(ioaddr, ADD_PORT, 0x0114); |
| 585 | writeword(ioaddr, DATA_PORT, 0x0040); | 585 | writeword(ioaddr, DATA_PORT, 0x0040); |
| 586 | #endif | 586 | #endif |
diff --git a/drivers/net/cxgb3/sge.c b/drivers/net/cxgb3/sge.c index 78e265b484b6..67e61b2a8c42 100644 --- a/drivers/net/cxgb3/sge.c +++ b/drivers/net/cxgb3/sge.c | |||
| @@ -197,13 +197,13 @@ static inline void refill_rspq(struct adapter *adapter, | |||
| 197 | /** | 197 | /** |
| 198 | * need_skb_unmap - does the platform need unmapping of sk_buffs? | 198 | * need_skb_unmap - does the platform need unmapping of sk_buffs? |
| 199 | * | 199 | * |
| 200 | * Returns true if the platfrom needs sk_buff unmapping. The compiler | 200 | * Returns true if the platform needs sk_buff unmapping. The compiler |
| 201 | * optimizes away unecessary code if this returns true. | 201 | * optimizes away unecessary code if this returns true. |
| 202 | */ | 202 | */ |
| 203 | static inline int need_skb_unmap(void) | 203 | static inline int need_skb_unmap(void) |
| 204 | { | 204 | { |
| 205 | /* | 205 | /* |
| 206 | * This structure is used to tell if the platfrom needs buffer | 206 | * This structure is used to tell if the platform needs buffer |
| 207 | * unmapping by checking if DECLARE_PCI_UNMAP_ADDR defines anything. | 207 | * unmapping by checking if DECLARE_PCI_UNMAP_ADDR defines anything. |
| 208 | */ | 208 | */ |
| 209 | struct dummy { | 209 | struct dummy { |
diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c index 1ac9440eb3fb..13f9869927e3 100644 --- a/drivers/net/davinci_emac.c +++ b/drivers/net/davinci_emac.c | |||
| @@ -2658,7 +2658,7 @@ static int __devinit davinci_emac_probe(struct platform_device *pdev) | |||
| 2658 | 2658 | ||
| 2659 | pdata = pdev->dev.platform_data; | 2659 | pdata = pdev->dev.platform_data; |
| 2660 | if (!pdata) { | 2660 | if (!pdata) { |
| 2661 | printk(KERN_ERR "DaVinci EMAC: No platfrom data\n"); | 2661 | printk(KERN_ERR "DaVinci EMAC: No platform data\n"); |
| 2662 | return -ENODEV; | 2662 | return -ENODEV; |
| 2663 | } | 2663 | } |
| 2664 | 2664 | ||
diff --git a/drivers/net/e1000e/82571.c b/drivers/net/e1000e/82571.c index 3c95acb3a87d..712ccc66ba25 100644 --- a/drivers/net/e1000e/82571.c +++ b/drivers/net/e1000e/82571.c | |||
| @@ -1346,7 +1346,7 @@ static s32 e1000_setup_fiber_serdes_link_82571(struct e1000_hw *hw) | |||
| 1346 | * | 1346 | * |
| 1347 | * 1) down | 1347 | * 1) down |
| 1348 | * 2) autoneg_progress | 1348 | * 2) autoneg_progress |
| 1349 | * 3) autoneg_complete (the link sucessfully autonegotiated) | 1349 | * 3) autoneg_complete (the link successfully autonegotiated) |
| 1350 | * 4) forced_up (the link has been forced up, it did not autonegotiate) | 1350 | * 4) forced_up (the link has been forced up, it did not autonegotiate) |
| 1351 | * | 1351 | * |
| 1352 | **/ | 1352 | **/ |
diff --git a/drivers/net/e1000e/lib.c b/drivers/net/e1000e/lib.c index 2425ed11d5cc..a8b2c0de27c4 100644 --- a/drivers/net/e1000e/lib.c +++ b/drivers/net/e1000e/lib.c | |||
| @@ -647,7 +647,7 @@ s32 e1000e_check_for_serdes_link(struct e1000_hw *hw) | |||
| 647 | if (!(rxcw & E1000_RXCW_IV)) { | 647 | if (!(rxcw & E1000_RXCW_IV)) { |
| 648 | mac->serdes_has_link = true; | 648 | mac->serdes_has_link = true; |
| 649 | e_dbg("SERDES: Link up - autoneg " | 649 | e_dbg("SERDES: Link up - autoneg " |
| 650 | "completed sucessfully.\n"); | 650 | "completed successfully.\n"); |
| 651 | } else { | 651 | } else { |
| 652 | mac->serdes_has_link = false; | 652 | mac->serdes_has_link = false; |
| 653 | e_dbg("SERDES: Link down - invalid" | 653 | e_dbg("SERDES: Link down - invalid" |
diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c index 583a21c1def3..0ed25f059a00 100644 --- a/drivers/net/igb/igb_main.c +++ b/drivers/net/igb/igb_main.c | |||
| @@ -688,7 +688,7 @@ static void igb_set_interrupt_capability(struct igb_adapter *adapter) | |||
| 688 | /* start with one vector for every rx queue */ | 688 | /* start with one vector for every rx queue */ |
| 689 | numvecs = adapter->num_rx_queues; | 689 | numvecs = adapter->num_rx_queues; |
| 690 | 690 | ||
| 691 | /* if tx handler is seperate add 1 for every tx queue */ | 691 | /* if tx handler is separate add 1 for every tx queue */ |
| 692 | if (!(adapter->flags & IGB_FLAG_QUEUE_PAIRS)) | 692 | if (!(adapter->flags & IGB_FLAG_QUEUE_PAIRS)) |
| 693 | numvecs += adapter->num_tx_queues; | 693 | numvecs += adapter->num_tx_queues; |
| 694 | 694 | ||
diff --git a/drivers/net/irda/sa1100_ir.c b/drivers/net/irda/sa1100_ir.c index c412e8026173..1dcdce0631aa 100644 --- a/drivers/net/irda/sa1100_ir.c +++ b/drivers/net/irda/sa1100_ir.c | |||
| @@ -331,7 +331,7 @@ static int sa1100_irda_resume(struct platform_device *pdev) | |||
| 331 | * If we missed a speed change, initialise at the new speed | 331 | * If we missed a speed change, initialise at the new speed |
| 332 | * directly. It is debatable whether this is actually | 332 | * directly. It is debatable whether this is actually |
| 333 | * required, but in the interests of continuing from where | 333 | * required, but in the interests of continuing from where |
| 334 | * we left off it is desireable. The converse argument is | 334 | * we left off it is desirable. The converse argument is |
| 335 | * that we should re-negotiate at 9600 baud again. | 335 | * that we should re-negotiate at 9600 baud again. |
| 336 | */ | 336 | */ |
| 337 | if (si->newspeed) { | 337 | if (si->newspeed) { |
diff --git a/drivers/net/ks8851.c b/drivers/net/ks8851.c index b5219cce12ed..0573e0bb4444 100644 --- a/drivers/net/ks8851.c +++ b/drivers/net/ks8851.c | |||
| @@ -407,7 +407,7 @@ static irqreturn_t ks8851_irq(int irq, void *pw) | |||
| 407 | * @buff: The buffer address | 407 | * @buff: The buffer address |
| 408 | * @len: The length of the data to read | 408 | * @len: The length of the data to read |
| 409 | * | 409 | * |
| 410 | * Issue an RXQ FIFO read command and read the @len ammount of data from | 410 | * Issue an RXQ FIFO read command and read the @len amount of data from |
| 411 | * the FIFO into the buffer specified by @buff. | 411 | * the FIFO into the buffer specified by @buff. |
| 412 | */ | 412 | */ |
| 413 | static void ks8851_rdfifo(struct ks8851_net *ks, u8 *buff, unsigned len) | 413 | static void ks8851_rdfifo(struct ks8851_net *ks, u8 *buff, unsigned len) |
diff --git a/drivers/net/qlge/qlge_ethtool.c b/drivers/net/qlge/qlge_ethtool.c index 05b8bde9980d..7dbff87480dc 100644 --- a/drivers/net/qlge/qlge_ethtool.c +++ b/drivers/net/qlge/qlge_ethtool.c | |||
| @@ -405,7 +405,7 @@ static int ql_set_wol(struct net_device *ndev, struct ethtool_wolinfo *wol) | |||
| 405 | u32 wol = 0; | 405 | u32 wol = 0; |
| 406 | status = ql_mb_wol_mode(qdev, wol); | 406 | status = ql_mb_wol_mode(qdev, wol); |
| 407 | netif_err(qdev, drv, qdev->ndev, "WOL %s (wol code 0x%x)\n", | 407 | netif_err(qdev, drv, qdev->ndev, "WOL %s (wol code 0x%x)\n", |
| 408 | status == 0 ? "cleared sucessfully" : "clear failed", | 408 | status == 0 ? "cleared successfully" : "clear failed", |
| 409 | wol); | 409 | wol); |
| 410 | } | 410 | } |
| 411 | 411 | ||
diff --git a/drivers/net/qlge/qlge_main.c b/drivers/net/qlge/qlge_main.c index c26ec5d740f6..fd34f266c0a8 100644 --- a/drivers/net/qlge/qlge_main.c +++ b/drivers/net/qlge/qlge_main.c | |||
| @@ -3855,7 +3855,7 @@ int ql_wol(struct ql_adapter *qdev) | |||
| 3855 | status = ql_mb_wol_mode(qdev, wol); | 3855 | status = ql_mb_wol_mode(qdev, wol); |
| 3856 | netif_err(qdev, drv, qdev->ndev, | 3856 | netif_err(qdev, drv, qdev->ndev, |
| 3857 | "WOL %s (wol code 0x%x) on %s\n", | 3857 | "WOL %s (wol code 0x%x) on %s\n", |
| 3858 | (status == 0) ? "Sucessfully set" : "Failed", | 3858 | (status == 0) ? "Successfully set" : "Failed", |
| 3859 | wol, qdev->ndev->name); | 3859 | wol, qdev->ndev->name); |
| 3860 | } | 3860 | } |
| 3861 | 3861 | ||
diff --git a/drivers/net/sfc/regs.h b/drivers/net/sfc/regs.h index 89d606fe9248..18a3be428348 100644 --- a/drivers/net/sfc/regs.h +++ b/drivers/net/sfc/regs.h | |||
| @@ -95,7 +95,7 @@ | |||
| 95 | #define FRF_AA_INT_ACK_KER_FIELD_LBN 0 | 95 | #define FRF_AA_INT_ACK_KER_FIELD_LBN 0 |
| 96 | #define FRF_AA_INT_ACK_KER_FIELD_WIDTH 32 | 96 | #define FRF_AA_INT_ACK_KER_FIELD_WIDTH 32 |
| 97 | 97 | ||
| 98 | /* INT_ISR0_REG: Function 0 Interrupt Acknowlege Status register */ | 98 | /* INT_ISR0_REG: Function 0 Interrupt Acknowledge Status register */ |
| 99 | #define FR_BZ_INT_ISR0 0x00000090 | 99 | #define FR_BZ_INT_ISR0 0x00000090 |
| 100 | #define FRF_BZ_INT_ISR_REG_LBN 0 | 100 | #define FRF_BZ_INT_ISR_REG_LBN 0 |
| 101 | #define FRF_BZ_INT_ISR_REG_WIDTH 64 | 101 | #define FRF_BZ_INT_ISR_REG_WIDTH 64 |
diff --git a/drivers/net/skfp/ess.c b/drivers/net/skfp/ess.c index a85efcfd9d0e..e8387d25f24a 100644 --- a/drivers/net/skfp/ess.c +++ b/drivers/net/skfp/ess.c | |||
| @@ -557,7 +557,7 @@ static void ess_send_alc_req(struct s_smc *smc) | |||
| 557 | 557 | ||
| 558 | /* | 558 | /* |
| 559 | * send never allocation request where the requested payload and | 559 | * send never allocation request where the requested payload and |
| 560 | * overhead is zero or deallocate bandwidht when no bandwidth is | 560 | * overhead is zero or deallocate bandwidth when no bandwidth is |
| 561 | * parsed | 561 | * parsed |
| 562 | */ | 562 | */ |
| 563 | if (!smc->mib.fddiESSPayload) { | 563 | if (!smc->mib.fddiESSPayload) { |
diff --git a/drivers/net/smsc9420.c b/drivers/net/smsc9420.c index 30110a11d737..34fa10d8ad40 100644 --- a/drivers/net/smsc9420.c +++ b/drivers/net/smsc9420.c | |||
| @@ -1347,7 +1347,7 @@ static int smsc9420_open(struct net_device *dev) | |||
| 1347 | 1347 | ||
| 1348 | netif_carrier_off(dev); | 1348 | netif_carrier_off(dev); |
| 1349 | 1349 | ||
| 1350 | /* disable, mask and acknowlege all interrupts */ | 1350 | /* disable, mask and acknowledge all interrupts */ |
| 1351 | spin_lock_irqsave(&pd->int_lock, flags); | 1351 | spin_lock_irqsave(&pd->int_lock, flags); |
| 1352 | int_cfg = smsc9420_reg_read(pd, INT_CFG) & (~INT_CFG_IRQ_EN_); | 1352 | int_cfg = smsc9420_reg_read(pd, INT_CFG) & (~INT_CFG_IRQ_EN_); |
| 1353 | smsc9420_reg_write(pd, INT_CFG, int_cfg); | 1353 | smsc9420_reg_write(pd, INT_CFG, int_cfg); |
diff --git a/drivers/net/spider_net.c b/drivers/net/spider_net.c index 2f8a8c32021e..5ba9d989f8fc 100644 --- a/drivers/net/spider_net.c +++ b/drivers/net/spider_net.c | |||
| @@ -474,7 +474,7 @@ spider_net_prepare_rx_descr(struct spider_net_card *card, | |||
| 474 | * spider_net_enable_rxchtails - sets RX dmac chain tail addresses | 474 | * spider_net_enable_rxchtails - sets RX dmac chain tail addresses |
| 475 | * @card: card structure | 475 | * @card: card structure |
| 476 | * | 476 | * |
| 477 | * spider_net_enable_rxchtails sets the RX DMAC chain tail adresses in the | 477 | * spider_net_enable_rxchtails sets the RX DMAC chain tail addresses in the |
| 478 | * chip by writing to the appropriate register. DMA is enabled in | 478 | * chip by writing to the appropriate register. DMA is enabled in |
| 479 | * spider_net_enable_rxdmac. | 479 | * spider_net_enable_rxdmac. |
| 480 | */ | 480 | */ |
| @@ -1820,7 +1820,7 @@ spider_net_enable_card(struct spider_net_card *card) | |||
| 1820 | 1820 | ||
| 1821 | spider_net_write_reg(card, SPIDER_NET_ECMODE, SPIDER_NET_ECMODE_VALUE); | 1821 | spider_net_write_reg(card, SPIDER_NET_ECMODE, SPIDER_NET_ECMODE_VALUE); |
| 1822 | 1822 | ||
| 1823 | /* set chain tail adress for RX chains and | 1823 | /* set chain tail address for RX chains and |
| 1824 | * enable DMA */ | 1824 | * enable DMA */ |
| 1825 | spider_net_enable_rxchtails(card); | 1825 | spider_net_enable_rxchtails(card); |
| 1826 | spider_net_enable_rxdmac(card); | 1826 | spider_net_enable_rxdmac(card); |
diff --git a/drivers/net/sungem.c b/drivers/net/sungem.c index 4344017bfaef..70196bc5fe61 100644 --- a/drivers/net/sungem.c +++ b/drivers/net/sungem.c | |||
| @@ -782,7 +782,7 @@ static int gem_rx(struct gem *gp, int work_to_do) | |||
| 782 | break; | 782 | break; |
| 783 | 783 | ||
| 784 | /* When writing back RX descriptor, GEM writes status | 784 | /* When writing back RX descriptor, GEM writes status |
| 785 | * then buffer address, possibly in seperate transactions. | 785 | * then buffer address, possibly in separate transactions. |
| 786 | * If we don't wait for the chip to write both, we could | 786 | * If we don't wait for the chip to write both, we could |
| 787 | * post a new buffer to this descriptor then have GEM spam | 787 | * post a new buffer to this descriptor then have GEM spam |
| 788 | * on the buffer address. We sync on the RX completion | 788 | * on the buffer address. We sync on the RX completion |
diff --git a/drivers/net/tehuti.c b/drivers/net/tehuti.c index 0c9780217c87..f5493092521a 100644 --- a/drivers/net/tehuti.c +++ b/drivers/net/tehuti.c | |||
| @@ -1851,7 +1851,7 @@ static void bdx_tx_push_desc(struct bdx_priv *priv, void *data, int size) | |||
| 1851 | * @data - desc's data | 1851 | * @data - desc's data |
| 1852 | * @size - desc's size | 1852 | * @size - desc's size |
| 1853 | * | 1853 | * |
| 1854 | * NOTE: this func does check for available space and, if neccessary, waits for | 1854 | * NOTE: this func does check for available space and, if necessary, waits for |
| 1855 | * NIC to read existing data before writing new one. | 1855 | * NIC to read existing data before writing new one. |
| 1856 | */ | 1856 | */ |
| 1857 | static void bdx_tx_push_desc_safe(struct bdx_priv *priv, void *data, int size) | 1857 | static void bdx_tx_push_desc_safe(struct bdx_priv *priv, void *data, int size) |
diff --git a/drivers/net/tokenring/tms380tr.c b/drivers/net/tokenring/tms380tr.c index 21a01753312a..ee71bcfb3753 100644 --- a/drivers/net/tokenring/tms380tr.c +++ b/drivers/net/tokenring/tms380tr.c | |||
| @@ -693,7 +693,7 @@ static netdev_tx_t tms380tr_hardware_send_packet(struct sk_buff *skb, | |||
| 693 | * NOTE: This function should be used whenever the status of any TPL must be | 693 | * NOTE: This function should be used whenever the status of any TPL must be |
| 694 | * modified by the driver, because the compiler may otherwise change the | 694 | * modified by the driver, because the compiler may otherwise change the |
| 695 | * order of instructions such that writing the TPL status may be executed at | 695 | * order of instructions such that writing the TPL status may be executed at |
| 696 | * an undesireable time. When this function is used, the status is always | 696 | * an undesirable time. When this function is used, the status is always |
| 697 | * written when the function is called. | 697 | * written when the function is called. |
| 698 | */ | 698 | */ |
| 699 | static void tms380tr_write_tpl_status(TPL *tpl, unsigned int Status) | 699 | static void tms380tr_write_tpl_status(TPL *tpl, unsigned int Status) |
| @@ -2264,7 +2264,7 @@ static void tms380tr_rcv_status_irq(struct net_device *dev) | |||
| 2264 | * This function should be used whenever the status of any RPL must be | 2264 | * This function should be used whenever the status of any RPL must be |
| 2265 | * modified by the driver, because the compiler may otherwise change the | 2265 | * modified by the driver, because the compiler may otherwise change the |
| 2266 | * order of instructions such that writing the RPL status may be executed | 2266 | * order of instructions such that writing the RPL status may be executed |
| 2267 | * at an undesireable time. When this function is used, the status is | 2267 | * at an undesirable time. When this function is used, the status is |
| 2268 | * always written when the function is called. | 2268 | * always written when the function is called. |
| 2269 | */ | 2269 | */ |
| 2270 | static void tms380tr_write_rpl_status(RPL *rpl, unsigned int Status) | 2270 | static void tms380tr_write_rpl_status(RPL *rpl, unsigned int Status) |
diff --git a/drivers/net/tun.c b/drivers/net/tun.c index ce1efa4c0b0d..96c39bddc78c 100644 --- a/drivers/net/tun.c +++ b/drivers/net/tun.c | |||
| @@ -1437,7 +1437,7 @@ static int tun_chr_close(struct inode *inode, struct file *file) | |||
| 1437 | 1437 | ||
| 1438 | __tun_detach(tun); | 1438 | __tun_detach(tun); |
| 1439 | 1439 | ||
| 1440 | /* If desireable, unregister the netdevice. */ | 1440 | /* If desirable, unregister the netdevice. */ |
| 1441 | if (!(tun->flags & TUN_PERSIST)) { | 1441 | if (!(tun->flags & TUN_PERSIST)) { |
| 1442 | rtnl_lock(); | 1442 | rtnl_lock(); |
| 1443 | if (dev->reg_state == NETREG_REGISTERED) | 1443 | if (dev->reg_state == NETREG_REGISTERED) |
diff --git a/drivers/net/typhoon.c b/drivers/net/typhoon.c index e3ddcb8f29df..2fbf15235c05 100644 --- a/drivers/net/typhoon.c +++ b/drivers/net/typhoon.c | |||
| @@ -2096,7 +2096,7 @@ typhoon_tx_timeout(struct net_device *dev) | |||
| 2096 | 2096 | ||
| 2097 | if(typhoon_reset(tp->ioaddr, WaitNoSleep) < 0) { | 2097 | if(typhoon_reset(tp->ioaddr, WaitNoSleep) < 0) { |
| 2098 | netdev_warn(dev, "could not reset in tx timeout\n"); | 2098 | netdev_warn(dev, "could not reset in tx timeout\n"); |
| 2099 | goto truely_dead; | 2099 | goto truly_dead; |
| 2100 | } | 2100 | } |
| 2101 | 2101 | ||
| 2102 | /* If we ever start using the Hi ring, it will need cleaning too */ | 2102 | /* If we ever start using the Hi ring, it will need cleaning too */ |
| @@ -2105,13 +2105,13 @@ typhoon_tx_timeout(struct net_device *dev) | |||
| 2105 | 2105 | ||
| 2106 | if(typhoon_start_runtime(tp) < 0) { | 2106 | if(typhoon_start_runtime(tp) < 0) { |
| 2107 | netdev_err(dev, "could not start runtime in tx timeout\n"); | 2107 | netdev_err(dev, "could not start runtime in tx timeout\n"); |
| 2108 | goto truely_dead; | 2108 | goto truly_dead; |
| 2109 | } | 2109 | } |
| 2110 | 2110 | ||
| 2111 | netif_wake_queue(dev); | 2111 | netif_wake_queue(dev); |
| 2112 | return; | 2112 | return; |
| 2113 | 2113 | ||
| 2114 | truely_dead: | 2114 | truly_dead: |
| 2115 | /* Reset the hardware, and turn off carrier to avoid more timeouts */ | 2115 | /* Reset the hardware, and turn off carrier to avoid more timeouts */ |
| 2116 | typhoon_reset(tp->ioaddr, NoWait); | 2116 | typhoon_reset(tp->ioaddr, NoWait); |
| 2117 | netif_carrier_off(dev); | 2117 | netif_carrier_off(dev); |
diff --git a/drivers/net/ucc_geth.c b/drivers/net/ucc_geth.c index 23a97518bc1f..1b0aef37e495 100644 --- a/drivers/net/ucc_geth.c +++ b/drivers/net/ucc_geth.c | |||
| @@ -430,7 +430,7 @@ static void hw_add_addr_in_hash(struct ucc_geth_private *ugeth, | |||
| 430 | ucc_fast_get_qe_cr_subblock(ugeth->ug_info->uf_info.ucc_num); | 430 | ucc_fast_get_qe_cr_subblock(ugeth->ug_info->uf_info.ucc_num); |
| 431 | 431 | ||
| 432 | /* Ethernet frames are defined in Little Endian mode, | 432 | /* Ethernet frames are defined in Little Endian mode, |
| 433 | therefor to insert */ | 433 | therefore to insert */ |
| 434 | /* the address to the hash (Big Endian mode), we reverse the bytes.*/ | 434 | /* the address to the hash (Big Endian mode), we reverse the bytes.*/ |
| 435 | 435 | ||
| 436 | set_mac_addr(&p_82xx_addr_filt->taddr.h, p_enet_addr); | 436 | set_mac_addr(&p_82xx_addr_filt->taddr.h, p_enet_addr); |
diff --git a/drivers/net/wan/cosa.c b/drivers/net/wan/cosa.c index b36bf96eb502..f0bd70fb650c 100644 --- a/drivers/net/wan/cosa.c +++ b/drivers/net/wan/cosa.c | |||
| @@ -811,7 +811,7 @@ static ssize_t cosa_read(struct file *file, | |||
| 811 | cosa_enable_rx(chan); | 811 | cosa_enable_rx(chan); |
| 812 | spin_lock_irqsave(&cosa->lock, flags); | 812 | spin_lock_irqsave(&cosa->lock, flags); |
| 813 | add_wait_queue(&chan->rxwaitq, &wait); | 813 | add_wait_queue(&chan->rxwaitq, &wait); |
| 814 | while(!chan->rx_status) { | 814 | while (!chan->rx_status) { |
| 815 | current->state = TASK_INTERRUPTIBLE; | 815 | current->state = TASK_INTERRUPTIBLE; |
| 816 | spin_unlock_irqrestore(&cosa->lock, flags); | 816 | spin_unlock_irqrestore(&cosa->lock, flags); |
| 817 | schedule(); | 817 | schedule(); |
| @@ -896,7 +896,7 @@ static ssize_t cosa_write(struct file *file, | |||
| 896 | 896 | ||
| 897 | spin_lock_irqsave(&cosa->lock, flags); | 897 | spin_lock_irqsave(&cosa->lock, flags); |
| 898 | add_wait_queue(&chan->txwaitq, &wait); | 898 | add_wait_queue(&chan->txwaitq, &wait); |
| 899 | while(!chan->tx_status) { | 899 | while (!chan->tx_status) { |
| 900 | current->state = TASK_INTERRUPTIBLE; | 900 | current->state = TASK_INTERRUPTIBLE; |
| 901 | spin_unlock_irqrestore(&cosa->lock, flags); | 901 | spin_unlock_irqrestore(&cosa->lock, flags); |
| 902 | schedule(); | 902 | schedule(); |
| @@ -1153,7 +1153,7 @@ static int cosa_ioctl_common(struct cosa_data *cosa, | |||
| 1153 | struct channel_data *channel, unsigned int cmd, unsigned long arg) | 1153 | struct channel_data *channel, unsigned int cmd, unsigned long arg) |
| 1154 | { | 1154 | { |
| 1155 | void __user *argp = (void __user *)arg; | 1155 | void __user *argp = (void __user *)arg; |
| 1156 | switch(cmd) { | 1156 | switch (cmd) { |
| 1157 | case COSAIORSET: /* Reset the device */ | 1157 | case COSAIORSET: /* Reset the device */ |
| 1158 | if (!capable(CAP_NET_ADMIN)) | 1158 | if (!capable(CAP_NET_ADMIN)) |
| 1159 | return -EACCES; | 1159 | return -EACCES; |
| @@ -1704,7 +1704,7 @@ static inline void tx_interrupt(struct cosa_data *cosa, int status) | |||
| 1704 | spin_unlock_irqrestore(&cosa->lock, flags); | 1704 | spin_unlock_irqrestore(&cosa->lock, flags); |
| 1705 | return; | 1705 | return; |
| 1706 | } | 1706 | } |
| 1707 | while(1) { | 1707 | while (1) { |
| 1708 | cosa->txchan++; | 1708 | cosa->txchan++; |
| 1709 | i++; | 1709 | i++; |
| 1710 | if (cosa->txchan >= cosa->nchannels) | 1710 | if (cosa->txchan >= cosa->nchannels) |
| @@ -2010,7 +2010,7 @@ again: | |||
| 2010 | static void debug_status_in(struct cosa_data *cosa, int status) | 2010 | static void debug_status_in(struct cosa_data *cosa, int status) |
| 2011 | { | 2011 | { |
| 2012 | char *s; | 2012 | char *s; |
| 2013 | switch(status & SR_CMD_FROM_SRP_MASK) { | 2013 | switch (status & SR_CMD_FROM_SRP_MASK) { |
| 2014 | case SR_UP_REQUEST: | 2014 | case SR_UP_REQUEST: |
| 2015 | s = "RX_REQ"; | 2015 | s = "RX_REQ"; |
| 2016 | break; | 2016 | break; |
diff --git a/drivers/net/wan/hdlc_cisco.c b/drivers/net/wan/hdlc_cisco.c index f1bff98acd1f..1ceccf1ca6c7 100644 --- a/drivers/net/wan/hdlc_cisco.c +++ b/drivers/net/wan/hdlc_cisco.c | |||
| @@ -141,7 +141,7 @@ static __be16 cisco_type_trans(struct sk_buff *skb, struct net_device *dev) | |||
| 141 | data->address != CISCO_UNICAST) | 141 | data->address != CISCO_UNICAST) |
| 142 | return cpu_to_be16(ETH_P_HDLC); | 142 | return cpu_to_be16(ETH_P_HDLC); |
| 143 | 143 | ||
| 144 | switch(data->protocol) { | 144 | switch (data->protocol) { |
| 145 | case cpu_to_be16(ETH_P_IP): | 145 | case cpu_to_be16(ETH_P_IP): |
| 146 | case cpu_to_be16(ETH_P_IPX): | 146 | case cpu_to_be16(ETH_P_IPX): |
| 147 | case cpu_to_be16(ETH_P_IPV6): | 147 | case cpu_to_be16(ETH_P_IPV6): |
| @@ -190,7 +190,7 @@ static int cisco_rx(struct sk_buff *skb) | |||
| 190 | cisco_data = (struct cisco_packet*)(skb->data + sizeof | 190 | cisco_data = (struct cisco_packet*)(skb->data + sizeof |
| 191 | (struct hdlc_header)); | 191 | (struct hdlc_header)); |
| 192 | 192 | ||
| 193 | switch(ntohl (cisco_data->type)) { | 193 | switch (ntohl (cisco_data->type)) { |
| 194 | case CISCO_ADDR_REQ: /* Stolen from syncppp.c :-) */ | 194 | case CISCO_ADDR_REQ: /* Stolen from syncppp.c :-) */ |
| 195 | in_dev = dev->ip_ptr; | 195 | in_dev = dev->ip_ptr; |
| 196 | addr = 0; | 196 | addr = 0; |
| @@ -245,8 +245,8 @@ static int cisco_rx(struct sk_buff *skb) | |||
| 245 | 245 | ||
| 246 | dev_kfree_skb_any(skb); | 246 | dev_kfree_skb_any(skb); |
| 247 | return NET_RX_SUCCESS; | 247 | return NET_RX_SUCCESS; |
| 248 | } /* switch(keepalive type) */ | 248 | } /* switch (keepalive type) */ |
| 249 | } /* switch(protocol) */ | 249 | } /* switch (protocol) */ |
| 250 | 250 | ||
| 251 | printk(KERN_INFO "%s: Unsupported protocol %x\n", dev->name, | 251 | printk(KERN_INFO "%s: Unsupported protocol %x\n", dev->name, |
| 252 | ntohs(data->protocol)); | 252 | ntohs(data->protocol)); |
diff --git a/drivers/net/wan/hdlc_x25.c b/drivers/net/wan/hdlc_x25.c index aa9248f8eb1a..6e1ca256effd 100644 --- a/drivers/net/wan/hdlc_x25.c +++ b/drivers/net/wan/hdlc_x25.c | |||
| @@ -202,10 +202,10 @@ static int x25_ioctl(struct net_device *dev, struct ifreq *ifr) | |||
| 202 | return 0; /* return protocol only, no settable parameters */ | 202 | return 0; /* return protocol only, no settable parameters */ |
| 203 | 203 | ||
| 204 | case IF_PROTO_X25: | 204 | case IF_PROTO_X25: |
| 205 | if(!capable(CAP_NET_ADMIN)) | 205 | if (!capable(CAP_NET_ADMIN)) |
| 206 | return -EPERM; | 206 | return -EPERM; |
| 207 | 207 | ||
| 208 | if(dev->flags & IFF_UP) | 208 | if (dev->flags & IFF_UP) |
| 209 | return -EBUSY; | 209 | return -EBUSY; |
| 210 | 210 | ||
| 211 | result=hdlc->attach(dev, ENCODING_NRZ,PARITY_CRC16_PR1_CCITT); | 211 | result=hdlc->attach(dev, ENCODING_NRZ,PARITY_CRC16_PR1_CCITT); |
diff --git a/drivers/net/wimax/i2400m/fw.c b/drivers/net/wimax/i2400m/fw.c index e803a7dc6502..25c24f0368d8 100644 --- a/drivers/net/wimax/i2400m/fw.c +++ b/drivers/net/wimax/i2400m/fw.c | |||
| @@ -612,7 +612,7 @@ ssize_t i2400m_bm_cmd(struct i2400m *i2400m, | |||
| 612 | goto error_wait_for_ack; | 612 | goto error_wait_for_ack; |
| 613 | } | 613 | } |
| 614 | rx_bytes = result; | 614 | rx_bytes = result; |
| 615 | /* verify the ack and read more if neccessary [result is the | 615 | /* verify the ack and read more if necessary [result is the |
| 616 | * final amount of bytes we get in the ack] */ | 616 | * final amount of bytes we get in the ack] */ |
| 617 | result = __i2400m_bm_ack_verify(i2400m, opcode, ack, ack_size, flags); | 617 | result = __i2400m_bm_ack_verify(i2400m, opcode, ack, ack_size, flags); |
| 618 | if (result < 0) | 618 | if (result < 0) |
diff --git a/drivers/net/wimax/i2400m/i2400m.h b/drivers/net/wimax/i2400m/i2400m.h index 04df9bbe340f..820b128705ec 100644 --- a/drivers/net/wimax/i2400m/i2400m.h +++ b/drivers/net/wimax/i2400m/i2400m.h | |||
| @@ -627,7 +627,7 @@ enum i2400m_bm_cmd_flags { | |||
| 627 | * @I2400M_BRI_NO_REBOOT: Do not reboot the device and proceed | 627 | * @I2400M_BRI_NO_REBOOT: Do not reboot the device and proceed |
| 628 | * directly to wait for a reboot barker from the device. | 628 | * directly to wait for a reboot barker from the device. |
| 629 | * @I2400M_BRI_MAC_REINIT: We need to reinitialize the boot | 629 | * @I2400M_BRI_MAC_REINIT: We need to reinitialize the boot |
| 630 | * rom after reading the MAC adress. This is quite a dirty hack, | 630 | * rom after reading the MAC address. This is quite a dirty hack, |
| 631 | * if you ask me -- the device requires the bootrom to be | 631 | * if you ask me -- the device requires the bootrom to be |
| 632 | * intialized after reading the MAC address. | 632 | * intialized after reading the MAC address. |
| 633 | */ | 633 | */ |
diff --git a/drivers/net/wimax/i2400m/sdio.c b/drivers/net/wimax/i2400m/sdio.c index 76a50ac02ebb..14f876b1358b 100644 --- a/drivers/net/wimax/i2400m/sdio.c +++ b/drivers/net/wimax/i2400m/sdio.c | |||
| @@ -304,7 +304,7 @@ error_kzalloc: | |||
| 304 | * | 304 | * |
| 305 | * The device will be fully reset internally, but won't be | 305 | * The device will be fully reset internally, but won't be |
| 306 | * disconnected from the bus (so no reenumeration will | 306 | * disconnected from the bus (so no reenumeration will |
| 307 | * happen). Firmware upload will be neccessary. | 307 | * happen). Firmware upload will be necessary. |
| 308 | * | 308 | * |
| 309 | * The device will send a reboot barker that will trigger the driver | 309 | * The device will send a reboot barker that will trigger the driver |
| 310 | * to reinitialize the state via __i2400m_dev_reset_handle. | 310 | * to reinitialize the state via __i2400m_dev_reset_handle. |
| @@ -314,7 +314,7 @@ error_kzalloc: | |||
| 314 | * | 314 | * |
| 315 | * The device will be fully reset internally, disconnected from the | 315 | * The device will be fully reset internally, disconnected from the |
| 316 | * bus an a reenumeration will happen. Firmware upload will be | 316 | * bus an a reenumeration will happen. Firmware upload will be |
| 317 | * neccessary. Thus, we don't do any locking or struct | 317 | * necessary. Thus, we don't do any locking or struct |
| 318 | * reinitialization, as we are going to be fully disconnected and | 318 | * reinitialization, as we are going to be fully disconnected and |
| 319 | * reenumerated. | 319 | * reenumerated. |
| 320 | * | 320 | * |
diff --git a/drivers/net/wimax/i2400m/usb.c b/drivers/net/wimax/i2400m/usb.c index 98f4f8c5fb68..99f04c475898 100644 --- a/drivers/net/wimax/i2400m/usb.c +++ b/drivers/net/wimax/i2400m/usb.c | |||
| @@ -246,7 +246,7 @@ error_kzalloc: | |||
| 246 | * | 246 | * |
| 247 | * The device will be fully reset internally, but won't be | 247 | * The device will be fully reset internally, but won't be |
| 248 | * disconnected from the USB bus (so no reenumeration will | 248 | * disconnected from the USB bus (so no reenumeration will |
| 249 | * happen). Firmware upload will be neccessary. | 249 | * happen). Firmware upload will be necessary. |
| 250 | * | 250 | * |
| 251 | * The device will send a reboot barker in the notification endpoint | 251 | * The device will send a reboot barker in the notification endpoint |
| 252 | * that will trigger the driver to reinitialize the state | 252 | * that will trigger the driver to reinitialize the state |
| @@ -257,7 +257,7 @@ error_kzalloc: | |||
| 257 | * | 257 | * |
| 258 | * The device will be fully reset internally, disconnected from the | 258 | * The device will be fully reset internally, disconnected from the |
| 259 | * USB bus an a reenumeration will happen. Firmware upload will be | 259 | * USB bus an a reenumeration will happen. Firmware upload will be |
| 260 | * neccessary. Thus, we don't do any locking or struct | 260 | * necessary. Thus, we don't do any locking or struct |
| 261 | * reinitialization, as we are going to be fully disconnected and | 261 | * reinitialization, as we are going to be fully disconnected and |
| 262 | * reenumerated. | 262 | * reenumerated. |
| 263 | * | 263 | * |
diff --git a/drivers/net/wireless/ath/ar9170/main.c b/drivers/net/wireless/ath/ar9170/main.c index a6452af9c6c5..08dc42da0f63 100644 --- a/drivers/net/wireless/ath/ar9170/main.c +++ b/drivers/net/wireless/ath/ar9170/main.c | |||
| @@ -2512,7 +2512,7 @@ void *ar9170_alloc(size_t priv_size) | |||
| 2512 | /* | 2512 | /* |
| 2513 | * this buffer is used for rx stream reconstruction. | 2513 | * this buffer is used for rx stream reconstruction. |
| 2514 | * Under heavy load this device (or the transport layer?) | 2514 | * Under heavy load this device (or the transport layer?) |
| 2515 | * tends to split the streams into seperate rx descriptors. | 2515 | * tends to split the streams into separate rx descriptors. |
| 2516 | */ | 2516 | */ |
| 2517 | 2517 | ||
| 2518 | skb = __dev_alloc_skb(AR9170_MAX_RX_BUFFER_SIZE, GFP_KERNEL); | 2518 | skb = __dev_alloc_skb(AR9170_MAX_RX_BUFFER_SIZE, GFP_KERNEL); |
diff --git a/drivers/net/wireless/iwmc3200wifi/lmac.h b/drivers/net/wireless/iwmc3200wifi/lmac.h index a3a79b5e2898..a855a99e49b8 100644 --- a/drivers/net/wireless/iwmc3200wifi/lmac.h +++ b/drivers/net/wireless/iwmc3200wifi/lmac.h | |||
| @@ -262,7 +262,7 @@ struct iwm_ct_kill_cfg_cmd { | |||
| 262 | 262 | ||
| 263 | /* Power Management */ | 263 | /* Power Management */ |
| 264 | #define POWER_TABLE_CMD 0x77 | 264 | #define POWER_TABLE_CMD 0x77 |
| 265 | #define SAVE_RESTORE_ADRESS_CMD 0x78 | 265 | #define SAVE_RESTORE_ADDRESS_CMD 0x78 |
| 266 | #define REPLY_WATERMARK_CMD 0x79 | 266 | #define REPLY_WATERMARK_CMD 0x79 |
| 267 | #define PM_DEBUG_STATISTIC_NOTIFIC 0x7B | 267 | #define PM_DEBUG_STATISTIC_NOTIFIC 0x7B |
| 268 | #define PD_FLUSH_N_NOTIFICATION 0x7C | 268 | #define PD_FLUSH_N_NOTIFICATION 0x7C |
diff --git a/drivers/net/wireless/rt2x00/rt2500usb.c b/drivers/net/wireless/rt2x00/rt2500usb.c index ee34c137e7cd..9b04964deced 100644 --- a/drivers/net/wireless/rt2x00/rt2500usb.c +++ b/drivers/net/wireless/rt2x00/rt2500usb.c | |||
| @@ -368,7 +368,7 @@ static int rt2500usb_config_key(struct rt2x00_dev *rt2x00dev, | |||
| 368 | 368 | ||
| 369 | /* | 369 | /* |
| 370 | * The encryption key doesn't fit within the CSR cache, | 370 | * The encryption key doesn't fit within the CSR cache, |
| 371 | * this means we should allocate it seperately and use | 371 | * this means we should allocate it separately and use |
| 372 | * rt2x00usb_vendor_request() to send the key to the hardware. | 372 | * rt2x00usb_vendor_request() to send the key to the hardware. |
| 373 | */ | 373 | */ |
| 374 | reg = KEY_ENTRY(key->hw_key_idx); | 374 | reg = KEY_ENTRY(key->hw_key_idx); |
| @@ -382,7 +382,7 @@ static int rt2500usb_config_key(struct rt2x00_dev *rt2x00dev, | |||
| 382 | /* | 382 | /* |
| 383 | * The driver does not support the IV/EIV generation | 383 | * The driver does not support the IV/EIV generation |
| 384 | * in hardware. However it demands the data to be provided | 384 | * in hardware. However it demands the data to be provided |
| 385 | * both seperately as well as inside the frame. | 385 | * both separately as well as inside the frame. |
| 386 | * We already provided the CONFIG_CRYPTO_COPY_IV to rt2x00lib | 386 | * We already provided the CONFIG_CRYPTO_COPY_IV to rt2x00lib |
| 387 | * to ensure rt2x00lib will not strip the data from the | 387 | * to ensure rt2x00lib will not strip the data from the |
| 388 | * frame after the copy, now we must tell mac80211 | 388 | * frame after the copy, now we must tell mac80211 |
diff --git a/drivers/net/wireless/rt2x00/rt2800usb.c b/drivers/net/wireless/rt2x00/rt2800usb.c index 5e4ee2023fcf..d27d7d5d850c 100644 --- a/drivers/net/wireless/rt2x00/rt2800usb.c +++ b/drivers/net/wireless/rt2x00/rt2800usb.c | |||
| @@ -99,7 +99,7 @@ static int rt2800usb_check_firmware(struct rt2x00_dev *rt2x00dev, | |||
| 99 | * There are 2 variations of the rt2870 firmware. | 99 | * There are 2 variations of the rt2870 firmware. |
| 100 | * a) size: 4kb | 100 | * a) size: 4kb |
| 101 | * b) size: 8kb | 101 | * b) size: 8kb |
| 102 | * Note that (b) contains 2 seperate firmware blobs of 4k | 102 | * Note that (b) contains 2 separate firmware blobs of 4k |
| 103 | * within the file. The first blob is the same firmware as (a), | 103 | * within the file. The first blob is the same firmware as (a), |
| 104 | * but the second blob is for the additional chipsets. | 104 | * but the second blob is for the additional chipsets. |
| 105 | */ | 105 | */ |
| @@ -117,7 +117,7 @@ static int rt2800usb_check_firmware(struct rt2x00_dev *rt2x00dev, | |||
| 117 | 117 | ||
| 118 | /* | 118 | /* |
| 119 | * 8kb firmware files must be checked as if it were | 119 | * 8kb firmware files must be checked as if it were |
| 120 | * 2 seperate firmware files. | 120 | * 2 separate firmware files. |
| 121 | */ | 121 | */ |
| 122 | while (offset < len) { | 122 | while (offset < len) { |
| 123 | if (!rt2800usb_check_crc(data + offset, 4096)) | 123 | if (!rt2800usb_check_crc(data + offset, 4096)) |
diff --git a/drivers/net/wireless/rt2x00/rt2x00debug.c b/drivers/net/wireless/rt2x00/rt2x00debug.c index 70c04c282efc..28a1c46ec4eb 100644 --- a/drivers/net/wireless/rt2x00/rt2x00debug.c +++ b/drivers/net/wireless/rt2x00/rt2x00debug.c | |||
| @@ -109,7 +109,7 @@ struct rt2x00debug_intf { | |||
| 109 | 109 | ||
| 110 | /* | 110 | /* |
| 111 | * HW crypto statistics. | 111 | * HW crypto statistics. |
| 112 | * All statistics are stored seperately per cipher type. | 112 | * All statistics are stored separately per cipher type. |
| 113 | */ | 113 | */ |
| 114 | struct rt2x00debug_crypto crypto_stats[CIPHER_MAX]; | 114 | struct rt2x00debug_crypto crypto_stats[CIPHER_MAX]; |
| 115 | 115 | ||
diff --git a/drivers/net/wireless/rt2x00/rt2x00dev.c b/drivers/net/wireless/rt2x00/rt2x00dev.c index b93731b79903..dd5ab8fe2321 100644 --- a/drivers/net/wireless/rt2x00/rt2x00dev.c +++ b/drivers/net/wireless/rt2x00/rt2x00dev.c | |||
| @@ -394,7 +394,7 @@ void rt2x00lib_rxdone(struct rt2x00_dev *rt2x00dev, | |||
| 394 | /* | 394 | /* |
| 395 | * Hardware might have stripped the IV/EIV/ICV data, | 395 | * Hardware might have stripped the IV/EIV/ICV data, |
| 396 | * in that case it is possible that the data was | 396 | * in that case it is possible that the data was |
| 397 | * provided seperately (through hardware descriptor) | 397 | * provided separately (through hardware descriptor) |
| 398 | * in which case we should reinsert the data into the frame. | 398 | * in which case we should reinsert the data into the frame. |
| 399 | */ | 399 | */ |
| 400 | if ((rxdesc.dev_flags & RXDONE_CRYPTO_IV) && | 400 | if ((rxdesc.dev_flags & RXDONE_CRYPTO_IV) && |
diff --git a/drivers/net/wireless/rt2x00/rt2x00queue.c b/drivers/net/wireless/rt2x00/rt2x00queue.c index 0b4801a14601..5b6b789cad3d 100644 --- a/drivers/net/wireless/rt2x00/rt2x00queue.c +++ b/drivers/net/wireless/rt2x00/rt2x00queue.c | |||
| @@ -497,7 +497,7 @@ int rt2x00queue_write_tx_frame(struct data_queue *queue, struct sk_buff *skb, | |||
| 497 | /* | 497 | /* |
| 498 | * When hardware encryption is supported, and this frame | 498 | * When hardware encryption is supported, and this frame |
| 499 | * is to be encrypted, we should strip the IV/EIV data from | 499 | * is to be encrypted, we should strip the IV/EIV data from |
| 500 | * the frame so we can provide it to the driver seperately. | 500 | * the frame so we can provide it to the driver separately. |
| 501 | */ | 501 | */ |
| 502 | if (test_bit(ENTRY_TXD_ENCRYPT, &txdesc.flags) && | 502 | if (test_bit(ENTRY_TXD_ENCRYPT, &txdesc.flags) && |
| 503 | !test_bit(ENTRY_TXD_ENCRYPT_IV, &txdesc.flags)) { | 503 | !test_bit(ENTRY_TXD_ENCRYPT_IV, &txdesc.flags)) { |
diff --git a/drivers/net/wireless/rt2x00/rt61pci.c b/drivers/net/wireless/rt2x00/rt61pci.c index e2da928dd9f0..177472742172 100644 --- a/drivers/net/wireless/rt2x00/rt61pci.c +++ b/drivers/net/wireless/rt2x00/rt61pci.c | |||
| @@ -476,7 +476,7 @@ static int rt61pci_config_pairwise_key(struct rt2x00_dev *rt2x00dev, | |||
| 476 | * The driver does not support the IV/EIV generation | 476 | * The driver does not support the IV/EIV generation |
| 477 | * in hardware. However it doesn't support the IV/EIV | 477 | * in hardware. However it doesn't support the IV/EIV |
| 478 | * inside the ieee80211 frame either, but requires it | 478 | * inside the ieee80211 frame either, but requires it |
| 479 | * to be provided seperately for the descriptor. | 479 | * to be provided separately for the descriptor. |
| 480 | * rt2x00lib will cut the IV/EIV data out of all frames | 480 | * rt2x00lib will cut the IV/EIV data out of all frames |
| 481 | * given to us by mac80211, but we must tell mac80211 | 481 | * given to us by mac80211, but we must tell mac80211 |
| 482 | * to generate the IV/EIV data. | 482 | * to generate the IV/EIV data. |
diff --git a/drivers/net/wireless/rt2x00/rt73usb.c b/drivers/net/wireless/rt2x00/rt73usb.c index f39a8ed17841..e77aec8d0a84 100644 --- a/drivers/net/wireless/rt2x00/rt73usb.c +++ b/drivers/net/wireless/rt2x00/rt73usb.c | |||
| @@ -339,7 +339,7 @@ static int rt73usb_config_shared_key(struct rt2x00_dev *rt2x00dev, | |||
| 339 | * The driver does not support the IV/EIV generation | 339 | * The driver does not support the IV/EIV generation |
| 340 | * in hardware. However it doesn't support the IV/EIV | 340 | * in hardware. However it doesn't support the IV/EIV |
| 341 | * inside the ieee80211 frame either, but requires it | 341 | * inside the ieee80211 frame either, but requires it |
| 342 | * to be provided seperately for the descriptor. | 342 | * to be provided separately for the descriptor. |
| 343 | * rt2x00lib will cut the IV/EIV data out of all frames | 343 | * rt2x00lib will cut the IV/EIV data out of all frames |
| 344 | * given to us by mac80211, but we must tell mac80211 | 344 | * given to us by mac80211, but we must tell mac80211 |
| 345 | * to generate the IV/EIV data. | 345 | * to generate the IV/EIV data. |
| @@ -439,7 +439,7 @@ static int rt73usb_config_pairwise_key(struct rt2x00_dev *rt2x00dev, | |||
| 439 | * The driver does not support the IV/EIV generation | 439 | * The driver does not support the IV/EIV generation |
| 440 | * in hardware. However it doesn't support the IV/EIV | 440 | * in hardware. However it doesn't support the IV/EIV |
| 441 | * inside the ieee80211 frame either, but requires it | 441 | * inside the ieee80211 frame either, but requires it |
| 442 | * to be provided seperately for the descriptor. | 442 | * to be provided separately for the descriptor. |
| 443 | * rt2x00lib will cut the IV/EIV data out of all frames | 443 | * rt2x00lib will cut the IV/EIV data out of all frames |
| 444 | * given to us by mac80211, but we must tell mac80211 | 444 | * given to us by mac80211, but we must tell mac80211 |
| 445 | * to generate the IV/EIV data. | 445 | * to generate the IV/EIV data. |
| @@ -1661,7 +1661,7 @@ static void rt73usb_fill_rxdone(struct queue_entry *entry, | |||
| 1661 | 1661 | ||
| 1662 | /* | 1662 | /* |
| 1663 | * Hardware has stripped IV/EIV data from 802.11 frame during | 1663 | * Hardware has stripped IV/EIV data from 802.11 frame during |
| 1664 | * decryption. It has provided the data seperately but rt2x00lib | 1664 | * decryption. It has provided the data separately but rt2x00lib |
| 1665 | * should decide if it should be reinserted. | 1665 | * should decide if it should be reinserted. |
| 1666 | */ | 1666 | */ |
| 1667 | rxdesc->flags |= RX_FLAG_IV_STRIPPED; | 1667 | rxdesc->flags |= RX_FLAG_IV_STRIPPED; |
diff --git a/drivers/net/wireless/zd1211rw/zd_mac.c b/drivers/net/wireless/zd1211rw/zd_mac.c index 2d555cc30508..a22a19203120 100644 --- a/drivers/net/wireless/zd1211rw/zd_mac.c +++ b/drivers/net/wireless/zd1211rw/zd_mac.c | |||
| @@ -374,7 +374,7 @@ static void zd_mac_tx_status(struct ieee80211_hw *hw, struct sk_buff *skb, | |||
| 374 | * zd_mac_tx_failed - callback for failed frames | 374 | * zd_mac_tx_failed - callback for failed frames |
| 375 | * @dev: the mac80211 wireless device | 375 | * @dev: the mac80211 wireless device |
| 376 | * | 376 | * |
| 377 | * This function is called if a frame couldn't be successfully be | 377 | * This function is called if a frame couldn't be successfully |
| 378 | * transferred. The first frame from the tx queue, will be selected and | 378 | * transferred. The first frame from the tx queue, will be selected and |
| 379 | * reported as error to the upper layers. | 379 | * reported as error to the upper layers. |
| 380 | */ | 380 | */ |
diff --git a/drivers/parport/ChangeLog b/drivers/parport/ChangeLog deleted file mode 100644 index 8565bbbeb6ec..000000000000 --- a/drivers/parport/ChangeLog +++ /dev/null | |||
| @@ -1,583 +0,0 @@ | |||
| 1 | 2001-10-11 Tim Waugh <twaugh@redhat.com> | ||
| 2 | * parport_pc.c, parport_serial.c: Support for NetMos cards. | ||
| 3 | + Patch originally from Michael Reinelt <reinelt@eunet.at>. | ||
| 4 | |||
| 5 | 2002-04-25 Tim Waugh <twaugh@redhat.com> | ||
| 6 | |||
| 7 | * parport_serial.c, parport_pc.c: Move some SIIG cards around. | ||
| 8 | Patch from Andrey Panin. | ||
| 9 | |||
| 10 | 2002-01-20 Tim Waugh <twaugh@redhat.com> | ||
| 11 | |||
| 12 | * parport_pc.c (parport_pc_compat_write_block_pio, | ||
| 13 | parport_pc_ecp_write_block_pio, parport_pc_ecp_read_block_pio): | ||
| 14 | Use the default implementations if the caller wants to use | ||
| 15 | O_NONBLOCK. | ||
| 16 | |||
| 17 | 2002-02-25 Tim Waugh <twaugh@redhat.com> | ||
| 18 | |||
| 19 | * parport_pc.c: Make sure that priv->ctr_writable includes IntEn | ||
| 20 | even if IRQ is given as a parameter. | ||
| 21 | |||
| 22 | 2002-01-21 Tim Waugh <twaugh@redhat.com> | ||
| 23 | |||
| 24 | * daisy.c: Apply patch from Max Vorobiev to make parport_daisy_select | ||
| 25 | work for ECP/EPP modes. | ||
| 26 | |||
| 27 | 2002-01-13 Niels Kristian Bech Jensen <nkbj@image.dk> | ||
| 28 | |||
| 29 | * parport_pc.c: Change some occurrences of frob_set_mode to | ||
| 30 | ECR_WRITE. This fixes PLIP. | ||
| 31 | |||
| 32 | 2002-01-04 Tim Waugh <twaugh@redhat.com> | ||
| 33 | |||
| 34 | * share.c (parport_claim_or_block): Sleep interruptibly to prevent | ||
| 35 | a possible deadlock. | ||
| 36 | |||
| 37 | 2001-12-07 Damian Gruszka <damian.gruszka@VisionSystems.de> | ||
| 38 | |||
| 39 | * parport_pc.c (ECR_WRITE): Define. If there are forbidden bits | ||
| 40 | in the ECR register for some chips, this will be a useful place to | ||
| 41 | put that knowledge. | ||
| 42 | (change_mode): Use ECR_WRITE. | ||
| 43 | (parport_pc_restore_state): Likewise. | ||
| 44 | (parport_ECPPS2_supported): Likewise. | ||
| 45 | (parport_ECPEPP_supported): Likewise. | ||
| 46 | (irq_probe_EPP): Likewise. | ||
| 47 | (programmable_irq_support): Likewise. | ||
| 48 | (programmable_dma_support): Likewise. | ||
| 49 | (parport_pc_probe_port): Likewise. | ||
| 50 | |||
| 51 | (frob_set_mode): New function. Set the mode bits of the ECR. | ||
| 52 | (get_fifo_residue): Use frob_set_mode. | ||
| 53 | (parport_pc_ecpepp_read_data): Likewise. | ||
| 54 | (parport_pc_ecpepp_write_data): Likewise. | ||
| 55 | (parport_pc_ecpepp_read_addr): Likewise. | ||
| 56 | (parport_pc_ecpepp_write_addr): Likewise. | ||
| 57 | (parport_pc_compat_write_block_pio): Likewise. | ||
| 58 | (parport_pc_ecp_write_block_pio): Likewise. | ||
| 59 | (parport_ECR_present): Likewise. | ||
| 60 | (parport_ECP_supported): Likewise. | ||
| 61 | (parport_EPP_supported): Likewise. | ||
| 62 | (parport_ECPEPP_supported): Likewise. | ||
| 63 | (programmable_irq_support): Likewise. | ||
| 64 | (irq_probe_ECP): Likewise. | ||
| 65 | (programmable_dma_support): Likewise. | ||
| 66 | |||
| 67 | (parport_pc_enable_irq): Only enable interrupts if we know which | ||
| 68 | IRQ line they will come from. | ||
| 69 | (parport_pc_init_state): Set nErrIntrEn at initialisation. | ||
| 70 | (parport_pc_restore_state): Only write writable bits of CTR. | ||
| 71 | (parport_irq_probe): If no IRQ is found, take ackIntEn out of the | ||
| 72 | writable bit set. | ||
| 73 | |||
| 74 | 2001-12-07 Tim Waugh <twaugh@redhat.com> | ||
| 75 | |||
| 76 | * parport_pc.c (parport_pc_fifo_write_block_pio): Correct typo. | ||
| 77 | (parport_pc_init_state): Only set ackIntEn if we know which IRQ | ||
| 78 | line the interrupts will come from. | ||
| 79 | |||
| 80 | 2001-12-07 Tim Waugh <twaugh@redhat.com> | ||
| 81 | |||
| 82 | * ieee1284_ops.c (parport_ieee1284_epp_write_addr, | ||
| 83 | parport_ieee1284_epp_read_addr): Actually do something useful. | ||
| 84 | |||
| 85 | 2001-12-07 Tim Waugh <twaugh@redhat.com> | ||
| 86 | |||
| 87 | * parport_pc.c (dmaval): Don't use DMA by default. It seems to be | ||
| 88 | too buggy at the moment. Use 'dma=auto' to restore the previous | ||
| 89 | behaviour. | ||
| 90 | |||
| 91 | 2001-12-07 Tim Waugh <twaugh@redhat.com> | ||
| 92 | |||
| 93 | * daisy.c (DEBUG): Undefine. | ||
| 94 | |||
| 95 | 2001-12-06 Tim Waugh <twaugh@redhat.com> | ||
| 96 | |||
| 97 | * ieee1284_ops.c (parport_ieee1284_ecp_read_data): Mask off | ||
| 98 | PARPORT_CONTROL_AUTOFD as well. Bug spotted by Joe | ||
| 99 | <joeja@mindspring.com>. | ||
| 100 | |||
| 101 | 2001-12-03 Rich Liu <Rich.Liu@ite.com.tw> | ||
| 102 | |||
| 103 | * parport_pc.c (sio_ite_8872_probe): ITE8873 is a single-port | ||
| 104 | serial board, not a serial+parallel. | ||
| 105 | |||
| 106 | 2001-11-30 Niels Kristian Bech Jensen <nkbj@image.dk> | ||
| 107 | |||
| 108 | * parport_pc.c: Fix compiler warning. | ||
| 109 | |||
| 110 | 2001-11-14 Tim Waugh <twaugh@redhat.com> | ||
| 111 | |||
| 112 | * parport_pc.c (parport_pc_pci_probe): Hooks for PCI cards before | ||
| 113 | and after probing for ports. | ||
| 114 | * parport_serial.c (parport_register): Likewise. | ||
| 115 | |||
| 116 | 2001-11-12 Tim Waugh <twaugh@redhat.com> | ||
| 117 | |||
| 118 | * parport_pc.c (init_module): Warn when parameters are ignored. | ||
| 119 | |||
| 120 | 2001-11-01 Damian Gruszka <damian.gruszka@VisionSystems.de> | ||
| 121 | |||
| 122 | * parport_serial.c (serial_register): Set base_baud before | ||
| 123 | calling register_serial. | ||
| 124 | |||
| 125 | 2001-10-26 Tim Waugh <twaugh@redhat.com> | ||
| 126 | |||
| 127 | * parport_pc.c (parport_irq_probe): When ECR programmable IRQ | ||
| 128 | support fails, generate interrupts using the FIFO even if we don't | ||
| 129 | want to use the FIFO for real data transfers. | ||
| 130 | (parport_pc_probe_port): Display the ECR address if we have an | ||
| 131 | ECR, not just if we will use the FIFO. | ||
| 132 | |||
| 133 | 2001-10-24 Dave Strauss <D.Strauss@motorola.com> | ||
| 134 | |||
| 135 | * parport_pc.c (parport_pc_compat_write_block_pio, | ||
| 136 | parport_pc_ecp_write_block_pio): Allow a few seconds for an ECP | ||
| 137 | transfer to finish up. | ||
| 138 | |||
| 139 | 2001-10-11 Tim Waugh <twaugh@redhat.com> | ||
| 140 | |||
| 141 | * parport_pc (sio_ite_8872_probe): New function, submitted by Rich | ||
| 142 | Liu from ITE. Cleaned up, removed bogus phys_to_virt calls. | ||
| 143 | |||
| 144 | 2001-10-24 Tim Waugh <twaugh@redhat.com> | ||
| 145 | |||
| 146 | * parport_pc.c: Support for AKS AladdinCARD. Patch from | ||
| 147 | Aladdin Knowledge Systems (Christian Groessler). | ||
| 148 | |||
| 149 | 2001-10-24 Tim Waugh <twaugh@redhat.com> | ||
| 150 | |||
| 151 | * ieee1284_ops.c (parport_ieee1284_ecp_read_data): Try to minimise | ||
| 152 | turnaround time. | ||
| 153 | |||
| 154 | * ieee1284.c (parport_poll_peripheral): Try a couple of times | ||
| 155 | first without delaying. | ||
| 156 | |||
| 157 | 2001-10-10 Tim Waugh <twaugh@redhat.com> | ||
| 158 | |||
| 159 | * parport_pc.c: Support for OX16PCI954 PCI card. | ||
| 160 | |||
| 161 | 2001-10-10 Tim Waugh <twaugh@redhat.com> | ||
| 162 | |||
| 163 | * parport_pc.c: Support for OX12PCI840 PCI card (reported by | ||
| 164 | mk@daveg.com). Lock-ups diagnosed by Ronnie Arosa (and now we | ||
| 165 | just don't trust its ECR). | ||
| 166 | |||
| 167 | 2001-10-10 Gunther Mayer <gunther.mayer@braunschweig.okersurf.de> | ||
| 168 | |||
| 169 | * parport_pc.c: Support for AVLAB cards. | ||
| 170 | |||
| 171 | 2001-10-10 Tim Waugh <twaugh@redhat.com> | ||
| 172 | |||
| 173 | * ieee1284_ops.c (ecp_forward_to_reverse, ecp_reverse_to_forward): | ||
| 174 | Remember to retry direction switch if it fails. Patch from David | ||
| 175 | Lambert. | ||
| 176 | |||
| 177 | 2001-10-08 David C. Hansen <haveblue@us.ibm.com> | ||
| 178 | |||
| 179 | * share.c: Make driverlist_lock and parportlist_lock static. | ||
| 180 | |||
| 181 | 2001-10-08 Philip Blundell <philb@gnu.org> | ||
| 182 | |||
| 183 | * parport_pc.c: New modular parameter verbose_logging. | ||
| 184 | Make port->modes indicate the modes that we are prepared to use, | ||
| 185 | rather than the modes that are available. | ||
| 186 | |||
| 187 | 2001-10-07 Tim Waugh <twaugh@redhat.com> | ||
| 188 | |||
| 189 | * parport_pc.c (parport_pc_probe_port): Fix memory leak spotted by | ||
| 190 | Kipp Cannon. | ||
| 191 | |||
| 192 | 2001-10-07 Tim Waugh <twaugh@redhat.com> | ||
| 193 | |||
| 194 | * parport_serial.c: Remove NetMos support, since it causes problems | ||
| 195 | for some people. | ||
| 196 | |||
| 197 | 2001-08-30 Tim Waugh <twaugh@redhat.com> | ||
| 198 | |||
| 199 | * parport_serial.c (parport_serial_pci_probe): Clean-up on partial | ||
| 200 | registration failure. | ||
| 201 | |||
| 202 | 2001-08-14 Tim Waugh <twaugh@redhat.com> | ||
| 203 | |||
| 204 | * parport_pc.c (parport_pc_init_superio): Allow for more than one | ||
| 205 | SuperIO device. Patch from Rich Lio (ITE). | ||
| 206 | |||
| 207 | 2001-08-11 Tim Waugh <twaugh@redhat.com> | ||
| 208 | |||
| 209 | * parport_pc.c: Support for Titan Electronics cards. | ||
| 210 | |||
| 211 | 2001-08-08 Tim Waugh <twaugh@redhat.com> | ||
| 212 | |||
| 213 | * share.c (parport_unregister_device): Remove device from wait list | ||
| 214 | too. | ||
| 215 | |||
| 216 | 2001-06-20 Tim Waugh <twaugh@redhat.com> | ||
| 217 | |||
| 218 | * parport_pc.c: Make 'io_hi=0' work. | ||
| 219 | |||
| 220 | 2001-05-31 Tim Waugh <twaugh@redhat.com> | ||
| 221 | |||
| 222 | * parport_serial.c: New file. | ||
| 223 | |||
| 224 | 2001-06-05 Tim Waugh <twaugh@redhat.com> | ||
| 225 | |||
| 226 | * parport_pc.c (parport_pc_unregister_port): New exported function. | ||
| 227 | Do the opposite of parport_pc_probe_port. | ||
| 228 | (cleanup_module): Use it. | ||
| 229 | |||
| 230 | 2001-05-22 Juan Quintela <quintela@mandrakesoft.com> | ||
| 231 | |||
| 232 | * parport_amiga.c: Set printk levels. | ||
| 233 | * parport_gsc.c: Likewise. | ||
| 234 | * parport_mfc3.c: Likewise. | ||
| 235 | * parport_pc.c: Likewise. | ||
| 236 | * parport_sunbpp.c: Likewise. | ||
| 237 | * probe.c: Likewise. | ||
| 238 | * share.c: Likewise. | ||
| 239 | |||
| 240 | 2001-05-10 Fred Barnes <frmb2@ukc.ac.uk> | ||
| 241 | |||
| 242 | * parport_pc.c (parport_pc_epp_read_data): added support for | ||
| 243 | reading from a w91284pic peripheral, flag is PARPORT_W91284PIC. | ||
| 244 | |||
| 245 | 2001-05-07 Fred Barnes <frmb2@ukc.ac.uk> | ||
| 246 | |||
| 247 | * parport_pc.c (parport_pc_epp_read_data, | ||
| 248 | parport_pc_epp_write_data, parport_pc_epp_read_addr, | ||
| 249 | parport_pc_epp_write_addr): support for fast reads/writes using | ||
| 250 | the PARPORT_EPP_FAST flag. | ||
| 251 | |||
| 252 | * ieee1284.c (parport_read, parport_write): added code to handle | ||
| 253 | software EPP mode (IEEE1284_MODE_EPPSWE). Added code to allow | ||
| 254 | BYTE mode reverse transfers (previously always went for NIBBLE | ||
| 255 | mode). | ||
| 256 | |||
| 257 | * ieee1284_ops.c (parport_ieee1284_epp_read_data, | ||
| 258 | parport_ieee1284_epp_write_data): fixed various polarity problems. | ||
| 259 | Also (theoretically) fixed address versions (.._addr), but no | ||
| 260 | hardware to test this on. | ||
| 261 | |||
| 262 | * parport_pc.h: added parport_dump_state() function for debugging. | ||
| 263 | Needs to have DEBUG_PARPORT to be defined for it to be included. | ||
| 264 | |||
| 265 | 2001-05-03 Tim Waugh <twaugh@redhat.com> | ||
| 266 | |||
| 267 | * parport_pc.c: Fix the compile problem I introduce from the last | ||
| 268 | change. | ||
| 269 | |||
| 270 | 2001-04-20 Paul Gortmaker <p_gortmaker@yahoo.com> | ||
| 271 | |||
| 272 | * parport_pc.c: Cut down the size quite a bit (more than 4k off | ||
| 273 | the object, about 1k off the zImage) for the older non-PCI | ||
| 274 | machines which are typically resource starved anyway... | ||
| 275 | |||
| 276 | 2001-03-26 R Horn <rjh@world.std.com> | ||
| 277 | |||
| 278 | * parport_pc.c: Some commentary changes. | ||
| 279 | |||
| 280 | 2001-04-19 Tim Waugh <twaugh@redhat.com> | ||
| 281 | |||
| 282 | * parport_pc.c (parport_pc_probe_port): Remove __devinit | ||
| 283 | attribute. Export unconditionally. | ||
| 284 | |||
| 285 | 2001-04-14 Jeff Garzik <jgarzik@pobox.com> | ||
| 286 | |||
| 287 | Merged: 2001-03-30 Tim Waugh <twaugh@redhat.com> | ||
| 288 | |||
| 289 | * drivers/parport/parport_pc.c: Make Via SuperIO chipsets behave | ||
| 290 | like everything else with respect to irq= and dma= parameters. | ||
| 291 | |||
| 292 | 2001-04-08 Tim Waugh <twaugh@redhat.com> | ||
| 293 | |||
| 294 | * parport_pc.c (parport_pc_save_state): Read from the soft copy of | ||
| 295 | the control port. | ||
| 296 | (parport_pc_restore_state): Update the soft copy of the control | ||
| 297 | port. | ||
| 298 | |||
| 299 | 2001-03-26 Tim Waugh <twaugh@redhat.com> | ||
| 300 | |||
| 301 | * share.c (parport_find_number, parport_find_base): Trigger | ||
| 302 | a lowlevel driver load if there are no ports yet. | ||
| 303 | |||
| 304 | 2001-03-26 Tim Waugh <twaugh@redhat.com> | ||
| 305 | |||
| 306 | * parport_pc.c (parport_ECP_supported): Remove the IRQ conflict | ||
| 307 | check since it seems totally unreliable. | ||
| 308 | |||
| 309 | 2001-03-02 Tim Waugh <twaugh@redhat.com> | ||
| 310 | |||
| 311 | * ieee1284_ops.c (parport_ieee1284_read_nibble): Reset nAutoFd | ||
| 312 | on timeout. Matches 2.2.x behaviour. | ||
| 313 | |||
| 314 | 2001-03-02 Andrew Morton | ||
| 315 | |||
| 316 | * parport_pc.c (registered_parport): New static variable. | ||
| 317 | (parport_pc_find_ports): Set it when we register PCI driver. | ||
| 318 | (init_module): Unregister PCI driver if necessary when we | ||
| 319 | fail. | ||
| 320 | |||
| 321 | 2001-03-02 Tim Waugh <twaugh@redhat.com> | ||
| 322 | |||
| 323 | * ieee1284_ops.c (parport_ieee1284_write_compat): Don't use | ||
| 324 | down_trylock to reset the IRQ count. Don't even use sema_init, | ||
| 325 | because it's not even necessary to reset the count. I can't | ||
| 326 | remember why we ever did. | ||
| 327 | |||
| 328 | 2001-01-04 Peter Osterlund <peter.osterlund@mailbox.swipnet.se> | ||
| 329 | |||
| 330 | * ieee1284.c (parport_negotiate): Fix missing printk argument. | ||
| 331 | |||
| 332 | 2001-01-03 Paul Schleger <Paul.Schleger@t-online.de> | ||
| 333 | |||
| 334 | * probe.c (parse_data): Get rid of trailing blanks in values. | ||
| 335 | Needed for XEROX XJ8C printer. | ||
| 336 | |||
| 337 | 2001-01-03 Tim Waugh <twaugh@redhat.com> | ||
| 338 | |||
| 339 | * parport_pc.c (parport_pc_probe_port): Say something when probes | ||
| 340 | are omitted. | ||
| 341 | |||
| 342 | 2001-01-03 Tim Waugh <twaugh@redhat.com> | ||
| 343 | |||
| 344 | * parport_pc.c (sio_via_686a_probe): Correct dma=255 fix. | ||
| 345 | |||
| 346 | 2000-11-21 Tim Waugh <twaugh@redhat.com> | ||
| 347 | |||
| 348 | * parport_pc.c (parport_pc_ecp_write_block_pio): Fix | ||
| 349 | reverse-to-forward logic. Spotted by Roland Kuck | ||
| 350 | <rci@cityweb.de>. | ||
| 351 | |||
| 352 | 2000-09-16 Cesar Eduardo Barros <cesarb@nitnet.com.br> | ||
| 353 | |||
| 354 | * parport_pc.c (sio_via_686a_probe): Handle case | ||
| 355 | where hardware returns 255 for IRQ or DMA. | ||
| 356 | |||
| 357 | 2000-07-20 Eddie C. Dost <ecd@skynet.be> | ||
| 358 | |||
| 359 | * share.c (attach_driver_chain): attach[i](port) needs to be | ||
| 360 | replaced by attach[count](port). | ||
| 361 | |||
| 362 | 2000-07-20 Eddie C. Dost <ecd@skynet.be> | ||
| 363 | |||
| 364 | * daisy.c (add_dev): kmalloc args are in wrong order. | ||
| 365 | |||
| 366 | 2000-07-12 Tim Waugh <twaugh@redhat.com> | ||
| 367 | |||
| 368 | * share.c: Documentation for parport_{get,port}_port, | ||
| 369 | parport_find_{number,base}. | ||
| 370 | |||
| 371 | 2000-07-12 Tim Waugh <twaugh@redhat.com> | ||
| 372 | |||
| 373 | * share.c (parport_unregister_device): Remove unneeded locking | ||
| 374 | (test cad==dev). | ||
| 375 | (parport_claim): Likewise. | ||
| 376 | (parport_find_number): New function. | ||
| 377 | |||
| 378 | 2000-07-12 Tim Waugh <twaugh@redhat.com> | ||
| 379 | |||
| 380 | * share.c (parport_register_port): Hold the parportlist_lock while | ||
| 381 | looking for a free parport number. | ||
| 382 | (parport_register_driver): Make sure that attach can block. | ||
| 383 | (attach_driver_chain): Likewise. | ||
| 384 | |||
| 385 | 2000-07-12 Tim Waugh <twaugh@redhat.com> | ||
| 386 | |||
| 387 | * share.c (call_driver_chain): Do reference counting things. | ||
| 388 | (parport_get_port): New function. | ||
| 389 | (parport_put_port): New function. | ||
| 390 | (parport_register_port): Initialise reference count to zero. | ||
| 391 | (parport_unregister_port): Check reference count rather than | ||
| 392 | driver list to see if we can free the port. | ||
| 393 | |||
| 394 | 2000-07-12 Tim Waugh <twaugh@redhat.com> | ||
| 395 | |||
| 396 | * share.c: Clarifications in doc comments. | ||
| 397 | |||
| 398 | 2000-07-12 Tim Waugh <twaugh@redhat.com> | ||
| 399 | |||
| 400 | * share.c (parport_unregister_port): Fix typo in comment. | ||
| 401 | |||
| 402 | 2000-07-11 Gunther Mayer <gunther.mayer@braunschweig.okersurf.de> | ||
| 403 | |||
| 404 | * parport_pc.c: Support for the full range of Timedia cards. | ||
| 405 | |||
| 406 | 2000-07-08 Tim Waugh <twaugh@redhat.com> | ||
| 407 | |||
| 408 | * daisy.c: License block comments as part of parportbook. | ||
| 409 | * ieee1284.c: Likewise. | ||
| 410 | * share.c: Likewise. | ||
| 411 | |||
| 412 | 2000-06-30 Petr Vandrovec <vandrove@vc.cvut.cz> | ||
| 413 | |||
| 414 | * procfs.c (do_hardware_modes): Generated string can be up to 34 | ||
| 415 | chars long. | ||
| 416 | |||
| 417 | 2000-06-20 Gunther Mayer <gunther.mayer@braunschweig.okersurf.de> | ||
| 418 | |||
| 419 | * parport_pc.c (parport_pc_compat_write_block_pio): Warn about | ||
| 420 | change_mode failures. | ||
| 421 | (parport_pc_ecp_write_block_pio): Likewise. | ||
| 422 | (parport_pc_ecp_read_block_pio): Likewise. | ||
| 423 | |||
| 424 | 2000-06-20 Gunther Mayer <gunther.mayer@braunschweig.okersurf.de> | ||
| 425 | |||
| 426 | * parport_pc.c (parport_SPP_supported): Warn more about possibly | ||
| 427 | incorrect parameters. | ||
| 428 | |||
| 429 | 2000-06-15 Tim Waugh <twaugh@redhat.com> | ||
| 430 | |||
| 431 | * parport_pc.c (parport_ECP_supported): Set PARPORT_MODE_COMPAT | ||
| 432 | for ECP ports, since they can all do hardware accelerated | ||
| 433 | compatibility mode (I assume). | ||
| 434 | |||
| 435 | 2000-06-13 Tim Waugh <twaugh@redhat.com> | ||
| 436 | |||
| 437 | * parport_pc.c (cleanup_module): Remark about possible bugs. | ||
| 438 | |||
| 439 | 2000-06-13 Tim Waugh <twaugh@redhat.com> | ||
| 440 | |||
| 441 | * procfs.c: Break 'hardware' out into separate files. | ||
| 442 | |||
| 443 | 2000-05-28 Gunther Mayer <gunther.mayer@braunschweig.okersurf.de> | ||
| 444 | |||
| 445 | * Fix PCI ID printk for non-superio PCI cards. | ||
| 446 | |||
| 447 | 2000-05-28 Tim Waugh <twaugh@redhat.com> | ||
| 448 | |||
| 449 | * share.c (call_driver_chain): Get the driverlist_lock. | ||
| 450 | (parport_register_device): Make sure that port->devices always | ||
| 451 | looks consistent. | ||
| 452 | (parport_register_driver): Ensure that parport drivers are given | ||
| 453 | parameters that are valid for the duration of the callback by | ||
| 454 | locking the portlist against changes. | ||
| 455 | (parport_unregister_driver): Likewise. | ||
| 456 | (parport_claim): Don't overwrite flags. | ||
| 457 | |||
| 458 | 2000-05-28 Tim Waugh <twaugh@redhat.com> | ||
| 459 | |||
| 460 | * daisy.c (assign_addrs): Avoid double-probing daisy-chain devices | ||
| 461 | if the first probe succeeds. | ||
| 462 | |||
| 463 | 2000-05-16 Tim Waugh <twaugh@redhat.com> | ||
| 464 | |||
| 465 | * share.c (parport_claim): Fix SMP race. | ||
| 466 | |||
| 467 | 2000-05-15 Gunther Mayer <gunther.mayer@braunschweig.okersurf.de> | ||
| 468 | |||
| 469 | * parport_pc.c (parport_pc_compat_write_block_pio): Check for | ||
| 470 | timeouts. | ||
| 471 | (parport_pc_ecp_write_block_pio): Likewise. | ||
| 472 | (parport_pc_ecp_read_block_pio): Likewise. | ||
| 473 | |||
| 474 | 2000-05-02 Gunther Mayer <gunther.mayer@braunschweig.okersurf.de> | ||
| 475 | |||
| 476 | * parport_pc.c: PCI SYBA patch and verbose PCI detection. | ||
| 477 | |||
| 478 | 2000-05-02 Gunther Mayer <gunther.mayer@braunschweig.okersurf.de> | ||
| 479 | |||
| 480 | * parport_pc.c (decode_smsc): Fix SMSC 665/666 identification. | ||
| 481 | |||
| 482 | 2000-04-28 Tim Waugh <twaugh@redhat.com> | ||
| 483 | |||
| 484 | * ieee1284.c: Short function descriptions can't be multiline. | ||
| 485 | |||
| 486 | * daisy.c: Short function descriptions can't be multiline. | ||
| 487 | |||
| 488 | 2000-04-19 Tim Waugh <twaugh@redhat.com> | ||
| 489 | |||
| 490 | * parport_pc.c (parport_pc_fifo_write_block_dma): Make maxlen | ||
| 491 | calculation a bit clearer. | ||
| 492 | |||
| 493 | * ieee1284.c (parport_negotiate): Turn on data line drivers. | ||
| 494 | |||
| 495 | * ieee1284_ops.c (parport_ieee1284_read_byte): Turn off data line | ||
| 496 | drivers. | ||
| 497 | (parport_ieee1284_write_compat): Turn on data line drivers. | ||
| 498 | |||
| 499 | * daisy.c (assign_addrs): Turn on data line drivers. | ||
| 500 | (cpp_mux): Likewise. | ||
| 501 | (cpp_daisy): Likewise. | ||
| 502 | |||
| 503 | 2000-04-04 Tim Waugh <twaugh@redhat.com> | ||
| 504 | |||
| 505 | * parport_pc.c: Add support for another PCI card. | ||
| 506 | |||
| 507 | 2000-04-04 Tim Waugh <twaugh@redhat.com> | ||
| 508 | |||
| 509 | * daisy.c: Documentation in kernel-doc format. | ||
| 510 | |||
| 511 | * ieee1284.c: Likewise. | ||
| 512 | |||
| 513 | * share.c: Likewise. | ||
| 514 | |||
| 515 | 2000-04-01 Tim Waugh <twaugh@redhat.com> | ||
| 516 | |||
| 517 | * share.c (parport_register_device): Need to hold the module | ||
| 518 | reference counts before sleeping. | ||
| 519 | |||
| 520 | 2000-03-27 Tim Waugh <twaugh@redhat.com> | ||
| 521 | |||
| 522 | * parport_pc.c (parport_pc_ecp_read_block_pio): Correct operation | ||
| 523 | when peripheral is trying to send data when we stop listening. | ||
| 524 | |||
| 525 | 2000-03-22 Tim Waugh <twaugh@redhat.com> | ||
| 526 | |||
| 527 | * init.c (parport_setup): Fix return value. | ||
| 528 | |||
| 529 | 2000-03-21 Tim Waugh <twaugh@redhat.com> | ||
| 530 | |||
| 531 | * parport_pc.c (parport_pc_pci_probe): Fix return value; call | ||
| 532 | pci_enable_device. | ||
| 533 | |||
| 534 | 2000-03-16 Tim Waugh <twaugh@redhat.com> | ||
| 535 | |||
| 536 | * parport_pc.c (parport_ECP_supported): This seems to trigger on | ||
| 537 | machines that don't have an IRQ conflict; toned down the warning | ||
| 538 | message accordingly. | ||
| 539 | |||
| 540 | 2000-03-16 Gunther Mayer <gunther.mayer@braunschweig.netsurf.de> | ||
| 541 | |||
| 542 | * parport_pc.c (show_parconfig_smsc37c669): Fix typo. | ||
| 543 | (decode_winbond): More IDs. | ||
| 544 | (winbond_check): Protect against false positives. | ||
| 545 | (winbond_check2): Likewise. | ||
| 546 | (smsc_check): Likewise. | ||
| 547 | |||
| 548 | 2000-03-15 Tim Waugh <twaugh@redhat.com> | ||
| 549 | |||
| 550 | * parport_pc.c (cleanup_module): Don't call pci_unregister_driver | ||
| 551 | if we didn't call pci_register_driver first. | ||
| 552 | |||
| 553 | 2000-03-13 Tim Waugh <twaugh@redhat.com> | ||
| 554 | |||
| 555 | * parport_pc.c (parport_pc_init): Moved from asm/parport.h. | ||
| 556 | |||
| 557 | * Config.in: CONFIG_PARPORT_PC_SUPERIO: new option. | ||
| 558 | |||
| 559 | * parport_pc.c (show_parconfig_smsc37c669): Make __devinit. | ||
| 560 | (show_parconfig_winbond): Likewise. | ||
| 561 | (decode_winbond): Likewise. | ||
| 562 | (decode_smsc): Likewise. | ||
| 563 | (winbond_check): Likewise. | ||
| 564 | (winbond_check2): Likewise. | ||
| 565 | (smsc_check): Likewise. | ||
| 566 | (detect_and_report_winbond): Likewise. | ||
| 567 | (detect_and_report_smsc): Likewise. | ||
| 568 | (get_superio_dma): Likewise. | ||
| 569 | (get_superio_irq): Likewise. | ||
| 570 | (parport_pc_find_isa_ports): New function. | ||
| 571 | (parport_pc_find_ports): New function. | ||
| 572 | (init_module): Make superio a config option, not a parameter. | ||
| 573 | |||
| 574 | 2000-03-10 Tim Waugh <twaugh@redhat.com> | ||
| 575 | |||
| 576 | * parport_pc.c (decode_winbond): Use correct 83877ATF chip ID. | ||
| 577 | (decode_winbond): Fix typo. | ||
| 578 | |||
| 579 | 2000-03-09 Tim Waugh <twaugh@redhat.com> | ||
| 580 | |||
| 581 | * parport_pc.c: Integrate SuperIO PCI probe with normal PCI card | ||
| 582 | probe, so that the MODULE_DEVICE_TABLE is complete. | ||
| 583 | |||
diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c index e7b0c3bcef89..c64e3528889b 100644 --- a/drivers/platform/x86/thinkpad_acpi.c +++ b/drivers/platform/x86/thinkpad_acpi.c | |||
| @@ -1668,7 +1668,7 @@ static void tpacpi_remove_driver_attributes(struct device_driver *drv) | |||
| 1668 | * Table of recommended minimum BIOS versions | 1668 | * Table of recommended minimum BIOS versions |
| 1669 | * | 1669 | * |
| 1670 | * Reasons for listing: | 1670 | * Reasons for listing: |
| 1671 | * 1. Stable BIOS, listed because the unknown ammount of | 1671 | * 1. Stable BIOS, listed because the unknown amount of |
| 1672 | * bugs and bad ACPI behaviour on older versions | 1672 | * bugs and bad ACPI behaviour on older versions |
| 1673 | * | 1673 | * |
| 1674 | * 2. BIOS or EC fw with known bugs that trigger on Linux | 1674 | * 2. BIOS or EC fw with known bugs that trigger on Linux |
| @@ -7108,7 +7108,7 @@ static struct ibm_struct volume_driver_data = { | |||
| 7108 | * | 7108 | * |
| 7109 | * Fan speed changes of any sort (including those caused by the | 7109 | * Fan speed changes of any sort (including those caused by the |
| 7110 | * disengaged mode) are usually done slowly by the firmware as the | 7110 | * disengaged mode) are usually done slowly by the firmware as the |
| 7111 | * maximum ammount of fan duty cycle change per second seems to be | 7111 | * maximum amount of fan duty cycle change per second seems to be |
| 7112 | * limited. | 7112 | * limited. |
| 7113 | * | 7113 | * |
| 7114 | * Reading is not available if GFAN exists. | 7114 | * Reading is not available if GFAN exists. |
diff --git a/drivers/s390/char/raw3270.c b/drivers/s390/char/raw3270.c index 62ddf5202b79..2a4c566456e7 100644 --- a/drivers/s390/char/raw3270.c +++ b/drivers/s390/char/raw3270.c | |||
| @@ -373,7 +373,7 @@ raw3270_irq (struct ccw_device *cdev, unsigned long intparm, struct irb *irb) | |||
| 373 | rq->rc = ccw_device_start(rp->cdev, &rq->ccw, | 373 | rq->rc = ccw_device_start(rp->cdev, &rq->ccw, |
| 374 | (unsigned long) rq, 0, 0); | 374 | (unsigned long) rq, 0, 0); |
| 375 | if (rq->rc == 0) | 375 | if (rq->rc == 0) |
| 376 | return; /* Sucessfully restarted. */ | 376 | return; /* Successfully restarted. */ |
| 377 | break; | 377 | break; |
| 378 | case RAW3270_IO_STOP: | 378 | case RAW3270_IO_STOP: |
| 379 | if (!rq) | 379 | if (!rq) |
diff --git a/drivers/s390/char/sclp.c b/drivers/s390/char/sclp.c index ec88c59842e3..f6d72e1f2a38 100644 --- a/drivers/s390/char/sclp.c +++ b/drivers/s390/char/sclp.c | |||
| @@ -196,7 +196,7 @@ __sclp_start_request(struct sclp_req *req) | |||
| 196 | req->start_count++; | 196 | req->start_count++; |
| 197 | 197 | ||
| 198 | if (rc == 0) { | 198 | if (rc == 0) { |
| 199 | /* Sucessfully started request */ | 199 | /* Successfully started request */ |
| 200 | req->status = SCLP_REQ_RUNNING; | 200 | req->status = SCLP_REQ_RUNNING; |
| 201 | sclp_running_state = sclp_running_state_running; | 201 | sclp_running_state = sclp_running_state_running; |
| 202 | __sclp_set_request_timer(SCLP_RETRY_INTERVAL * HZ, | 202 | __sclp_set_request_timer(SCLP_RETRY_INTERVAL * HZ, |
diff --git a/drivers/scsi/a100u2w.c b/drivers/scsi/a100u2w.c index 208d6df9ed59..ff5716d5f044 100644 --- a/drivers/scsi/a100u2w.c +++ b/drivers/scsi/a100u2w.c | |||
| @@ -492,7 +492,7 @@ static void init_alloc_map(struct orc_host * host) | |||
| 492 | * init_orchid - initialise the host adapter | 492 | * init_orchid - initialise the host adapter |
| 493 | * @host:host adapter to initialise | 493 | * @host:host adapter to initialise |
| 494 | * | 494 | * |
| 495 | * Initialise the controller and if neccessary load the firmware. | 495 | * Initialise the controller and if necessary load the firmware. |
| 496 | * | 496 | * |
| 497 | * Returns -1 if the initialisation fails. | 497 | * Returns -1 if the initialisation fails. |
| 498 | */ | 498 | */ |
diff --git a/drivers/scsi/initio.c b/drivers/scsi/initio.c index 89a59484be02..a7714160fbc3 100644 --- a/drivers/scsi/initio.c +++ b/drivers/scsi/initio.c | |||
| @@ -531,7 +531,7 @@ static void initio_read_eeprom(unsigned long base) | |||
| 531 | * initio_stop_bm - stop bus master | 531 | * initio_stop_bm - stop bus master |
| 532 | * @host: InitIO we are stopping | 532 | * @host: InitIO we are stopping |
| 533 | * | 533 | * |
| 534 | * Stop any pending DMA operation, aborting the DMA if neccessary | 534 | * Stop any pending DMA operation, aborting the DMA if necessary |
| 535 | */ | 535 | */ |
| 536 | 536 | ||
| 537 | static void initio_stop_bm(struct initio_host * host) | 537 | static void initio_stop_bm(struct initio_host * host) |
diff --git a/drivers/scsi/libfc/fc_fcp.c b/drivers/scsi/libfc/fc_fcp.c index 6fde2fabfd9b..774e7ac837a5 100644 --- a/drivers/scsi/libfc/fc_fcp.c +++ b/drivers/scsi/libfc/fc_fcp.c | |||
| @@ -48,7 +48,7 @@ struct kmem_cache *scsi_pkt_cachep; | |||
| 48 | #define FC_SRB_CMD_SENT (1 << 0) /* cmd has been sent */ | 48 | #define FC_SRB_CMD_SENT (1 << 0) /* cmd has been sent */ |
| 49 | #define FC_SRB_RCV_STATUS (1 << 1) /* response has arrived */ | 49 | #define FC_SRB_RCV_STATUS (1 << 1) /* response has arrived */ |
| 50 | #define FC_SRB_ABORT_PENDING (1 << 2) /* cmd abort sent to device */ | 50 | #define FC_SRB_ABORT_PENDING (1 << 2) /* cmd abort sent to device */ |
| 51 | #define FC_SRB_ABORTED (1 << 3) /* abort acknowleged */ | 51 | #define FC_SRB_ABORTED (1 << 3) /* abort acknowledged */ |
| 52 | #define FC_SRB_DISCONTIG (1 << 4) /* non-sequential data recvd */ | 52 | #define FC_SRB_DISCONTIG (1 << 4) /* non-sequential data recvd */ |
| 53 | #define FC_SRB_COMPL (1 << 5) /* fc_io_compl has been run */ | 53 | #define FC_SRB_COMPL (1 << 5) /* fc_io_compl has been run */ |
| 54 | #define FC_SRB_FCP_PROCESSING_TMO (1 << 6) /* timer function processing */ | 54 | #define FC_SRB_FCP_PROCESSING_TMO (1 << 6) /* timer function processing */ |
| @@ -519,7 +519,7 @@ crc_err: | |||
| 519 | * | 519 | * |
| 520 | * Called after receiving a Transfer Ready data descriptor. | 520 | * Called after receiving a Transfer Ready data descriptor. |
| 521 | * If the LLD is capable of sequence offload then send down the | 521 | * If the LLD is capable of sequence offload then send down the |
| 522 | * seq_blen ammount of data in single frame, otherwise send | 522 | * seq_blen amount of data in single frame, otherwise send |
| 523 | * multiple frames of the maximum frame payload supported by | 523 | * multiple frames of the maximum frame payload supported by |
| 524 | * the target port. | 524 | * the target port. |
| 525 | */ | 525 | */ |
diff --git a/drivers/scsi/lpfc/lpfc_els.c b/drivers/scsi/lpfc/lpfc_els.c index 08b6634cb994..2a40a6eabf4d 100644 --- a/drivers/scsi/lpfc/lpfc_els.c +++ b/drivers/scsi/lpfc/lpfc_els.c | |||
| @@ -981,7 +981,7 @@ lpfc_issue_els_flogi(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, | |||
| 981 | * function returns, it does not guarantee all the IOCBs are actually aborted. | 981 | * function returns, it does not guarantee all the IOCBs are actually aborted. |
| 982 | * | 982 | * |
| 983 | * Return code | 983 | * Return code |
| 984 | * 0 - Sucessfully issued abort iocb on all outstanding flogis (Always 0) | 984 | * 0 - Successfully issued abort iocb on all outstanding flogis (Always 0) |
| 985 | **/ | 985 | **/ |
| 986 | int | 986 | int |
| 987 | lpfc_els_abort_flogi(struct lpfc_hba *phba) | 987 | lpfc_els_abort_flogi(struct lpfc_hba *phba) |
| @@ -3129,7 +3129,7 @@ lpfc_cmpl_els_rsp(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb, | |||
| 3129 | if (ndlp && NLP_CHK_NODE_ACT(ndlp) && | 3129 | if (ndlp && NLP_CHK_NODE_ACT(ndlp) && |
| 3130 | (*((uint32_t *) (pcmd)) == ELS_CMD_LS_RJT)) { | 3130 | (*((uint32_t *) (pcmd)) == ELS_CMD_LS_RJT)) { |
| 3131 | /* A LS_RJT associated with Default RPI cleanup has its own | 3131 | /* A LS_RJT associated with Default RPI cleanup has its own |
| 3132 | * seperate code path. | 3132 | * separate code path. |
| 3133 | */ | 3133 | */ |
| 3134 | if (!(ndlp->nlp_flag & NLP_RM_DFLT_RPI)) | 3134 | if (!(ndlp->nlp_flag & NLP_RM_DFLT_RPI)) |
| 3135 | ls_rjt = 1; | 3135 | ls_rjt = 1; |
diff --git a/drivers/scsi/lpfc/lpfc_scsi.c b/drivers/scsi/lpfc/lpfc_scsi.c index 7f21b47db791..483fb74bc592 100644 --- a/drivers/scsi/lpfc/lpfc_scsi.c +++ b/drivers/scsi/lpfc/lpfc_scsi.c | |||
| @@ -1575,7 +1575,7 @@ lpfc_bg_scsi_prep_dma_buf(struct lpfc_hba *phba, | |||
| 1575 | case LPFC_PG_TYPE_NO_DIF: | 1575 | case LPFC_PG_TYPE_NO_DIF: |
| 1576 | num_bde = lpfc_bg_setup_bpl(phba, scsi_cmnd, bpl, | 1576 | num_bde = lpfc_bg_setup_bpl(phba, scsi_cmnd, bpl, |
| 1577 | datasegcnt); | 1577 | datasegcnt); |
| 1578 | /* we shoud have 2 or more entries in buffer list */ | 1578 | /* we should have 2 or more entries in buffer list */ |
| 1579 | if (num_bde < 2) | 1579 | if (num_bde < 2) |
| 1580 | goto err; | 1580 | goto err; |
| 1581 | break; | 1581 | break; |
| @@ -1612,7 +1612,7 @@ lpfc_bg_scsi_prep_dma_buf(struct lpfc_hba *phba, | |||
| 1612 | 1612 | ||
| 1613 | num_bde = lpfc_bg_setup_bpl_prot(phba, scsi_cmnd, bpl, | 1613 | num_bde = lpfc_bg_setup_bpl_prot(phba, scsi_cmnd, bpl, |
| 1614 | datasegcnt, protsegcnt); | 1614 | datasegcnt, protsegcnt); |
| 1615 | /* we shoud have 3 or more entries in buffer list */ | 1615 | /* we should have 3 or more entries in buffer list */ |
| 1616 | if (num_bde < 3) | 1616 | if (num_bde < 3) |
| 1617 | goto err; | 1617 | goto err; |
| 1618 | break; | 1618 | break; |
diff --git a/drivers/scsi/pcmcia/nsp_cs.h b/drivers/scsi/pcmcia/nsp_cs.h index 7db28cd49446..8c61a4fe1db9 100644 --- a/drivers/scsi/pcmcia/nsp_cs.h +++ b/drivers/scsi/pcmcia/nsp_cs.h | |||
| @@ -187,7 +187,7 @@ | |||
| 187 | #define S_IO BIT(1) /* Input/Output line from SCSI bus */ | 187 | #define S_IO BIT(1) /* Input/Output line from SCSI bus */ |
| 188 | #define S_CD BIT(2) /* Command/Data line from SCSI bus */ | 188 | #define S_CD BIT(2) /* Command/Data line from SCSI bus */ |
| 189 | #define S_BUSY BIT(3) /* Busy line from SCSI bus */ | 189 | #define S_BUSY BIT(3) /* Busy line from SCSI bus */ |
| 190 | #define S_ACK BIT(4) /* Acknowlege line from SCSI bus */ | 190 | #define S_ACK BIT(4) /* Acknowledge line from SCSI bus */ |
| 191 | #define S_REQUEST BIT(5) /* Request line from SCSI bus */ | 191 | #define S_REQUEST BIT(5) /* Request line from SCSI bus */ |
| 192 | #define S_SELECT BIT(6) /* */ | 192 | #define S_SELECT BIT(6) /* */ |
| 193 | #define S_ATN BIT(7) /* */ | 193 | #define S_ATN BIT(7) /* */ |
diff --git a/drivers/scsi/pm8001/pm8001_hwi.c b/drivers/scsi/pm8001/pm8001_hwi.c index 9b44c6f1b10e..7985ae45d688 100644 --- a/drivers/scsi/pm8001/pm8001_hwi.c +++ b/drivers/scsi/pm8001/pm8001_hwi.c | |||
| @@ -2924,7 +2924,7 @@ hw_event_sas_phy_up(struct pm8001_hba_info *pm8001_ha, void *piomb) | |||
| 2924 | break; | 2924 | break; |
| 2925 | default: | 2925 | default: |
| 2926 | PM8001_MSG_DBG(pm8001_ha, | 2926 | PM8001_MSG_DBG(pm8001_ha, |
| 2927 | pm8001_printk("unkown device type(%x)\n", deviceType)); | 2927 | pm8001_printk("unknown device type(%x)\n", deviceType)); |
| 2928 | break; | 2928 | break; |
| 2929 | } | 2929 | } |
| 2930 | phy->phy_type |= PORT_TYPE_SAS; | 2930 | phy->phy_type |= PORT_TYPE_SAS; |
diff --git a/drivers/scsi/pm8001/pm8001_sas.c b/drivers/scsi/pm8001/pm8001_sas.c index 7f9c83a76390..3b2c98fba834 100644 --- a/drivers/scsi/pm8001/pm8001_sas.c +++ b/drivers/scsi/pm8001/pm8001_sas.c | |||
| @@ -600,7 +600,7 @@ static void pm8001_free_dev(struct pm8001_device *pm8001_dev) | |||
| 600 | * by the command "OPC_INB_REG_DEV", after that the HBA will assign a | 600 | * by the command "OPC_INB_REG_DEV", after that the HBA will assign a |
| 601 | * device ID(according to device's sas address) and returned it to LLDD. From | 601 | * device ID(according to device's sas address) and returned it to LLDD. From |
| 602 | * now on, we communicate with HBA FW with the device ID which HBA assigned | 602 | * now on, we communicate with HBA FW with the device ID which HBA assigned |
| 603 | * rather than sas address. it is the neccessary step for our HBA but it is | 603 | * rather than sas address. it is the necessary step for our HBA but it is |
| 604 | * the optional for other HBA driver. | 604 | * the optional for other HBA driver. |
| 605 | */ | 605 | */ |
| 606 | static int pm8001_dev_found_notify(struct domain_device *dev) | 606 | static int pm8001_dev_found_notify(struct domain_device *dev) |
diff --git a/drivers/scsi/pmcraid.h b/drivers/scsi/pmcraid.h index 92f89d50850c..b8ad07c3449e 100644 --- a/drivers/scsi/pmcraid.h +++ b/drivers/scsi/pmcraid.h | |||
| @@ -938,7 +938,7 @@ static struct pmcraid_ioasc_error pmcraid_ioasc_error_table[] = { | |||
| 938 | 938 | ||
| 939 | /* | 939 | /* |
| 940 | * pmcraid_ioctl_header - definition of header structure that preceeds all the | 940 | * pmcraid_ioctl_header - definition of header structure that preceeds all the |
| 941 | * buffers given as ioctl arguements. | 941 | * buffers given as ioctl arguments. |
| 942 | * | 942 | * |
| 943 | * .signature : always ASCII string, "PMCRAID" | 943 | * .signature : always ASCII string, "PMCRAID" |
| 944 | * .reserved : not used | 944 | * .reserved : not used |
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index 1dd4d8407694..83881dfb33c0 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c | |||
| @@ -2111,7 +2111,7 @@ static int sd_revalidate_disk(struct gendisk *disk) | |||
| 2111 | * which is followed by sdaaa. | 2111 | * which is followed by sdaaa. |
| 2112 | * | 2112 | * |
| 2113 | * This is basically 26 base counting with one extra 'nil' entry | 2113 | * This is basically 26 base counting with one extra 'nil' entry |
| 2114 | * at the beggining from the second digit on and can be | 2114 | * at the beginning from the second digit on and can be |
| 2115 | * determined using similar method as 26 base conversion with the | 2115 | * determined using similar method as 26 base conversion with the |
| 2116 | * index shifted -1 after each digit is computed. | 2116 | * index shifted -1 after each digit is computed. |
| 2117 | * | 2117 | * |
diff --git a/drivers/serial/samsung.c b/drivers/serial/samsung.c index 52e3df113ec0..03c010af966b 100644 --- a/drivers/serial/samsung.c +++ b/drivers/serial/samsung.c | |||
| @@ -1271,7 +1271,7 @@ s3c24xx_serial_console_txrdy(struct uart_port *port, unsigned int ufcon) | |||
| 1271 | unsigned long ufstat, utrstat; | 1271 | unsigned long ufstat, utrstat; |
| 1272 | 1272 | ||
| 1273 | if (ufcon & S3C2410_UFCON_FIFOMODE) { | 1273 | if (ufcon & S3C2410_UFCON_FIFOMODE) { |
| 1274 | /* fifo mode - check ammount of data in fifo registers... */ | 1274 | /* fifo mode - check amount of data in fifo registers... */ |
| 1275 | 1275 | ||
| 1276 | ufstat = rd_regl(port, S3C2410_UFSTAT); | 1276 | ufstat = rd_regl(port, S3C2410_UFSTAT); |
| 1277 | return (ufstat & info->tx_fifofull) ? 0 : 1; | 1277 | return (ufstat & info->tx_fifofull) ? 0 : 1; |
diff --git a/drivers/spi/spi_s3c24xx.c b/drivers/spi/spi_s3c24xx.c index c010733877ae..1fabede9e061 100644 --- a/drivers/spi/spi_s3c24xx.c +++ b/drivers/spi/spi_s3c24xx.c | |||
| @@ -275,7 +275,7 @@ static inline u32 ack_bit(unsigned int irq) | |||
| 275 | * Claim the FIQ handler (only one can be active at any one time) and | 275 | * Claim the FIQ handler (only one can be active at any one time) and |
| 276 | * then setup the correct transfer code for this transfer. | 276 | * then setup the correct transfer code for this transfer. |
| 277 | * | 277 | * |
| 278 | * This call updates all the necessary state information if sucessful, | 278 | * This call updates all the necessary state information if successful, |
| 279 | * so the caller does not need to do anything more than start the transfer | 279 | * so the caller does not need to do anything more than start the transfer |
| 280 | * as normal, since the IRQ will have been re-routed to the FIQ handler. | 280 | * as normal, since the IRQ will have been re-routed to the FIQ handler. |
| 281 | */ | 281 | */ |
diff --git a/drivers/usb/musb/davinci.c b/drivers/usb/musb/davinci.c index 66913811af5e..a883f9dd3f8a 100644 --- a/drivers/usb/musb/davinci.c +++ b/drivers/usb/musb/davinci.c | |||
| @@ -274,7 +274,7 @@ static irqreturn_t davinci_interrupt(int irq, void *__hci) | |||
| 274 | /* NOTE: DaVinci shadows the Mentor IRQs. Don't manage them through | 274 | /* NOTE: DaVinci shadows the Mentor IRQs. Don't manage them through |
| 275 | * the Mentor registers (except for setup), use the TI ones and EOI. | 275 | * the Mentor registers (except for setup), use the TI ones and EOI. |
| 276 | * | 276 | * |
| 277 | * Docs describe irq "vector" registers asociated with the CPPI and | 277 | * Docs describe irq "vector" registers associated with the CPPI and |
| 278 | * USB EOI registers. These hold a bitmask corresponding to the | 278 | * USB EOI registers. These hold a bitmask corresponding to the |
| 279 | * current IRQ, not an irq handler address. Would using those bits | 279 | * current IRQ, not an irq handler address. Would using those bits |
| 280 | * resolve some of the races observed in this dispatch code?? | 280 | * resolve some of the races observed in this dispatch code?? |
diff --git a/drivers/usb/musb/musb_regs.h b/drivers/usb/musb/musb_regs.h index 292894a2c247..8d8062b10e2f 100644 --- a/drivers/usb/musb/musb_regs.h +++ b/drivers/usb/musb/musb_regs.h | |||
| @@ -491,7 +491,7 @@ static inline u8 musb_read_txhubport(void __iomem *mbase, u8 epnum) | |||
| 491 | #define MUSB_FLAT_OFFSET(_epnum, _offset) \ | 491 | #define MUSB_FLAT_OFFSET(_epnum, _offset) \ |
| 492 | (USB_OFFSET(USB_EP_NI0_TXMAXP) + (0x40 * (_epnum)) + (_offset)) | 492 | (USB_OFFSET(USB_EP_NI0_TXMAXP) + (0x40 * (_epnum)) + (_offset)) |
| 493 | 493 | ||
| 494 | /* Not implemented - HW has seperate Tx/Rx FIFO */ | 494 | /* Not implemented - HW has separate Tx/Rx FIFO */ |
| 495 | #define MUSB_TXCSR_MODE 0x0000 | 495 | #define MUSB_TXCSR_MODE 0x0000 |
| 496 | 496 | ||
| 497 | static inline void musb_write_txfifosz(void __iomem *mbase, u8 c_size) | 497 | static inline void musb_write_txfifosz(void __iomem *mbase, u8 c_size) |
diff --git a/drivers/usb/serial/cypress_m8.c b/drivers/usb/serial/cypress_m8.c index baf74b44e6ed..e23c77925e7a 100644 --- a/drivers/usb/serial/cypress_m8.c +++ b/drivers/usb/serial/cypress_m8.c | |||
| @@ -152,7 +152,7 @@ struct cypress_private { | |||
| 152 | int isthrottled; /* if throttled, discard reads */ | 152 | int isthrottled; /* if throttled, discard reads */ |
| 153 | wait_queue_head_t delta_msr_wait; /* used for TIOCMIWAIT */ | 153 | wait_queue_head_t delta_msr_wait; /* used for TIOCMIWAIT */ |
| 154 | char prev_status, diff_status; /* used for TIOCMIWAIT */ | 154 | char prev_status, diff_status; /* used for TIOCMIWAIT */ |
| 155 | /* we pass a pointer to this as the arguement sent to | 155 | /* we pass a pointer to this as the argument sent to |
| 156 | cypress_set_termios old_termios */ | 156 | cypress_set_termios old_termios */ |
| 157 | struct ktermios tmp_termios; /* stores the old termios settings */ | 157 | struct ktermios tmp_termios; /* stores the old termios settings */ |
| 158 | }; | 158 | }; |
diff --git a/drivers/usb/serial/opticon.c b/drivers/usb/serial/opticon.c index f37476e22684..701452ae9197 100644 --- a/drivers/usb/serial/opticon.c +++ b/drivers/usb/serial/opticon.c | |||
| @@ -115,7 +115,7 @@ static void opticon_bulk_callback(struct urb *urb) | |||
| 115 | } | 115 | } |
| 116 | } else { | 116 | } else { |
| 117 | dev_dbg(&priv->udev->dev, | 117 | dev_dbg(&priv->udev->dev, |
| 118 | "Improper ammount of data received from the device, " | 118 | "Improper amount of data received from the device, " |
| 119 | "%d bytes", urb->actual_length); | 119 | "%d bytes", urb->actual_length); |
| 120 | } | 120 | } |
| 121 | 121 | ||
diff --git a/drivers/usb/serial/symbolserial.c b/drivers/usb/serial/symbolserial.c index 72398888858f..ee190cc1757c 100644 --- a/drivers/usb/serial/symbolserial.c +++ b/drivers/usb/serial/symbolserial.c | |||
| @@ -94,7 +94,7 @@ static void symbol_int_callback(struct urb *urb) | |||
| 94 | } | 94 | } |
| 95 | } else { | 95 | } else { |
| 96 | dev_dbg(&priv->udev->dev, | 96 | dev_dbg(&priv->udev->dev, |
| 97 | "Improper ammount of data received from the device, " | 97 | "Improper amount of data received from the device, " |
| 98 | "%d bytes", urb->actual_length); | 98 | "%d bytes", urb->actual_length); |
| 99 | } | 99 | } |
| 100 | 100 | ||
diff --git a/drivers/usb/wusbcore/wusbhc.h b/drivers/usb/wusbcore/wusbhc.h index fd2fd4e277e1..759cda55f7c3 100644 --- a/drivers/usb/wusbcore/wusbhc.h +++ b/drivers/usb/wusbcore/wusbhc.h | |||
| @@ -198,7 +198,7 @@ struct wusb_port { | |||
| 198 | * ports) this HC will take. Read-only. | 198 | * ports) this HC will take. Read-only. |
| 199 | * | 199 | * |
| 200 | * @port Array of port status for each fake root port. Guaranteed to | 200 | * @port Array of port status for each fake root port. Guaranteed to |
| 201 | * always be the same lenght during device existence | 201 | * always be the same length during device existence |
| 202 | * [this allows for some unlocked but referenced reading]. | 202 | * [this allows for some unlocked but referenced reading]. |
| 203 | * | 203 | * |
| 204 | * @mmcies_max Max number of Information Elements this HC can send | 204 | * @mmcies_max Max number of Information Elements this HC can send |
diff --git a/drivers/uwb/i1480/i1480-est.c b/drivers/uwb/i1480/i1480-est.c index 7bf8c6febae7..f2eb4d8b76c9 100644 --- a/drivers/uwb/i1480/i1480-est.c +++ b/drivers/uwb/i1480/i1480-est.c | |||
| @@ -54,7 +54,7 @@ static struct uwb_est_entry i1480_est_fd01[] = { | |||
| 54 | .size = sizeof(struct i1480_rceb) + 2 }, | 54 | .size = sizeof(struct i1480_rceb) + 2 }, |
| 55 | }; | 55 | }; |
| 56 | 56 | ||
| 57 | static int i1480_est_init(void) | 57 | static int __init i1480_est_init(void) |
| 58 | { | 58 | { |
| 59 | int result = uwb_est_register(i1480_CET_VS1, 0x00, 0x8086, 0x0c3b, | 59 | int result = uwb_est_register(i1480_CET_VS1, 0x00, 0x8086, 0x0c3b, |
| 60 | i1480_est_fd00, | 60 | i1480_est_fd00, |
| @@ -73,7 +73,7 @@ static int i1480_est_init(void) | |||
| 73 | } | 73 | } |
| 74 | module_init(i1480_est_init); | 74 | module_init(i1480_est_init); |
| 75 | 75 | ||
| 76 | static void i1480_est_exit(void) | 76 | static void __exit i1480_est_exit(void) |
| 77 | { | 77 | { |
| 78 | uwb_est_unregister(i1480_CET_VS1, 0x00, 0x8086, 0x0c3b, | 78 | uwb_est_unregister(i1480_CET_VS1, 0x00, 0x8086, 0x0c3b, |
| 79 | i1480_est_fd00, ARRAY_SIZE(i1480_est_fd00)); | 79 | i1480_est_fd00, ARRAY_SIZE(i1480_est_fd00)); |
diff --git a/drivers/uwb/uwbd.c b/drivers/uwb/uwbd.c index 5a777d8624da..6210fe1fd1bb 100644 --- a/drivers/uwb/uwbd.c +++ b/drivers/uwb/uwbd.c | |||
| @@ -43,7 +43,7 @@ | |||
| 43 | * | 43 | * |
| 44 | * EVENTS | 44 | * EVENTS |
| 45 | * | 45 | * |
| 46 | * Events have a type, a subtype, a lenght, some other stuff and the | 46 | * Events have a type, a subtype, a length, some other stuff and the |
| 47 | * data blob, which depends on the event. The header is 'struct | 47 | * data blob, which depends on the event. The header is 'struct |
| 48 | * uwb_event'; for payloads, see 'struct uwbd_evt_*'. | 48 | * uwb_event'; for payloads, see 'struct uwbd_evt_*'. |
| 49 | * | 49 | * |
diff --git a/drivers/video/68328fb.c b/drivers/video/68328fb.c index 0b17824b0eb5..2110556f76b3 100644 --- a/drivers/video/68328fb.c +++ b/drivers/video/68328fb.c | |||
| @@ -308,7 +308,7 @@ static int mc68x328fb_setcolreg(u_int regno, u_int red, u_int green, u_int blue, | |||
| 308 | * Pseudocolor: | 308 | * Pseudocolor: |
| 309 | * uses offset = 0 && length = RAMDAC register width. | 309 | * uses offset = 0 && length = RAMDAC register width. |
| 310 | * var->{color}.offset is 0 | 310 | * var->{color}.offset is 0 |
| 311 | * var->{color}.length contains widht of DAC | 311 | * var->{color}.length contains width of DAC |
| 312 | * cmap is not used | 312 | * cmap is not used |
| 313 | * RAMDAC[X] is programmed to (red, green, blue) | 313 | * RAMDAC[X] is programmed to (red, green, blue) |
| 314 | * Truecolor: | 314 | * Truecolor: |
diff --git a/drivers/video/mbx/mbxfb.c b/drivers/video/mbx/mbxfb.c index 01f77bcc68f9..afea9abbd678 100644 --- a/drivers/video/mbx/mbxfb.c +++ b/drivers/video/mbx/mbxfb.c | |||
| @@ -693,7 +693,7 @@ static void __devinit setup_memc(struct fb_info *fbi) | |||
| 693 | unsigned long tmp; | 693 | unsigned long tmp; |
| 694 | int i; | 694 | int i; |
| 695 | 695 | ||
| 696 | /* FIXME: use platfrom specific parameters */ | 696 | /* FIXME: use platform specific parameters */ |
| 697 | /* setup SDRAM controller */ | 697 | /* setup SDRAM controller */ |
| 698 | write_reg_dly((LMCFG_LMC_DS | LMCFG_LMC_TS | LMCFG_LMD_TS | | 698 | write_reg_dly((LMCFG_LMC_DS | LMCFG_LMC_TS | LMCFG_LMD_TS | |
| 699 | LMCFG_LMA_TS), | 699 | LMCFG_LMA_TS), |
diff --git a/drivers/video/omap/lcdc.c b/drivers/video/omap/lcdc.c index a33483910dc8..9557f963662e 100644 --- a/drivers/video/omap/lcdc.c +++ b/drivers/video/omap/lcdc.c | |||
| @@ -389,7 +389,7 @@ static int omap_lcdc_enable_plane(int plane, int enable) | |||
| 389 | /* | 389 | /* |
| 390 | * Configure the LCD DMA for a palette load operation and do the palette | 390 | * Configure the LCD DMA for a palette load operation and do the palette |
| 391 | * downloading synchronously. We don't use the frame+palette load mode of | 391 | * downloading synchronously. We don't use the frame+palette load mode of |
| 392 | * the controller, since the palette can always be downloaded seperately. | 392 | * the controller, since the palette can always be downloaded separately. |
| 393 | */ | 393 | */ |
| 394 | static void load_palette(void) | 394 | static void load_palette(void) |
| 395 | { | 395 | { |
diff --git a/drivers/video/pm2fb.c b/drivers/video/pm2fb.c index 36436ee6c1a4..27f93aab6ddc 100644 --- a/drivers/video/pm2fb.c +++ b/drivers/video/pm2fb.c | |||
| @@ -896,7 +896,7 @@ static int pm2fb_setcolreg(unsigned regno, unsigned red, unsigned green, | |||
| 896 | * Pseudocolor: | 896 | * Pseudocolor: |
| 897 | * uses offset = 0 && length = DAC register width. | 897 | * uses offset = 0 && length = DAC register width. |
| 898 | * var->{color}.offset is 0 | 898 | * var->{color}.offset is 0 |
| 899 | * var->{color}.length contains widht of DAC | 899 | * var->{color}.length contains width of DAC |
| 900 | * cmap is not used | 900 | * cmap is not used |
| 901 | * DAC[X] is programmed to (red, green, blue) | 901 | * DAC[X] is programmed to (red, green, blue) |
| 902 | * Truecolor: | 902 | * Truecolor: |
diff --git a/drivers/video/s1d13xxxfb.c b/drivers/video/s1d13xxxfb.c index 0deb0a8867b7..7b63429f1a7c 100644 --- a/drivers/video/s1d13xxxfb.c +++ b/drivers/video/s1d13xxxfb.c | |||
| @@ -517,12 +517,12 @@ s1d13xxxfb_bitblt_copyarea(struct fb_info *info, const struct fb_copyarea *area) | |||
| 517 | src = (sy * stride) + (bpp * sx); | 517 | src = (sy * stride) + (bpp * sx); |
| 518 | } | 518 | } |
| 519 | 519 | ||
| 520 | /* set source adress */ | 520 | /* set source address */ |
| 521 | s1d13xxxfb_writereg(info->par, S1DREG_BBLT_SRC_START0, (src & 0xff)); | 521 | s1d13xxxfb_writereg(info->par, S1DREG_BBLT_SRC_START0, (src & 0xff)); |
| 522 | s1d13xxxfb_writereg(info->par, S1DREG_BBLT_SRC_START1, (src >> 8) & 0x00ff); | 522 | s1d13xxxfb_writereg(info->par, S1DREG_BBLT_SRC_START1, (src >> 8) & 0x00ff); |
| 523 | s1d13xxxfb_writereg(info->par, S1DREG_BBLT_SRC_START2, (src >> 16) & 0x00ff); | 523 | s1d13xxxfb_writereg(info->par, S1DREG_BBLT_SRC_START2, (src >> 16) & 0x00ff); |
| 524 | 524 | ||
| 525 | /* set destination adress */ | 525 | /* set destination address */ |
| 526 | s1d13xxxfb_writereg(info->par, S1DREG_BBLT_DST_START0, (dst & 0xff)); | 526 | s1d13xxxfb_writereg(info->par, S1DREG_BBLT_DST_START0, (dst & 0xff)); |
| 527 | s1d13xxxfb_writereg(info->par, S1DREG_BBLT_DST_START1, (dst >> 8) & 0x00ff); | 527 | s1d13xxxfb_writereg(info->par, S1DREG_BBLT_DST_START1, (dst >> 8) & 0x00ff); |
| 528 | s1d13xxxfb_writereg(info->par, S1DREG_BBLT_DST_START2, (dst >> 16) & 0x00ff); | 528 | s1d13xxxfb_writereg(info->par, S1DREG_BBLT_DST_START2, (dst >> 16) & 0x00ff); |
diff --git a/drivers/video/sm501fb.c b/drivers/video/sm501fb.c index 35370d0ecf03..b7dc1800efa9 100644 --- a/drivers/video/sm501fb.c +++ b/drivers/video/sm501fb.c | |||
| @@ -411,7 +411,7 @@ static int sm501fb_set_par_common(struct fb_info *info, | |||
| 411 | struct sm501fb_par *par = info->par; | 411 | struct sm501fb_par *par = info->par; |
| 412 | struct sm501fb_info *fbi = par->info; | 412 | struct sm501fb_info *fbi = par->info; |
| 413 | unsigned long pixclock; /* pixelclock in Hz */ | 413 | unsigned long pixclock; /* pixelclock in Hz */ |
| 414 | unsigned long sm501pixclock; /* pixelclock the 501 can achive in Hz */ | 414 | unsigned long sm501pixclock; /* pixelclock the 501 can achieve in Hz */ |
| 415 | unsigned int mem_type; | 415 | unsigned int mem_type; |
| 416 | unsigned int clock_type; | 416 | unsigned int clock_type; |
| 417 | unsigned int head_addr; | 417 | unsigned int head_addr; |
diff --git a/drivers/video/sstfb.c b/drivers/video/sstfb.c index 609d0a521ca2..79840f11fecb 100644 --- a/drivers/video/sstfb.c +++ b/drivers/video/sstfb.c | |||
| @@ -1102,7 +1102,7 @@ static void sst_set_vidmod_ics(struct fb_info *info, const int bpp) | |||
| 1102 | * detect dac type | 1102 | * detect dac type |
| 1103 | * prerequisite : write to FbiInitx enabled, video and fbi and pci fifo reset, | 1103 | * prerequisite : write to FbiInitx enabled, video and fbi and pci fifo reset, |
| 1104 | * dram refresh disabled, FbiInit remaped. | 1104 | * dram refresh disabled, FbiInit remaped. |
| 1105 | * TODO: mmh.. maybe i shoud put the "prerequisite" in the func ... | 1105 | * TODO: mmh.. maybe i should put the "prerequisite" in the func ... |
| 1106 | */ | 1106 | */ |
| 1107 | 1107 | ||
| 1108 | 1108 | ||
diff --git a/drivers/w1/w1.c b/drivers/w1/w1.c index acc7e3b7fe17..ad5897dc4495 100644 --- a/drivers/w1/w1.c +++ b/drivers/w1/w1.c | |||
| @@ -986,7 +986,7 @@ int w1_process(void *data) | |||
| 986 | return 0; | 986 | return 0; |
| 987 | } | 987 | } |
| 988 | 988 | ||
| 989 | static int w1_init(void) | 989 | static int __init w1_init(void) |
| 990 | { | 990 | { |
| 991 | int retval; | 991 | int retval; |
| 992 | 992 | ||
| @@ -1034,7 +1034,7 @@ err_out_exit_init: | |||
| 1034 | return retval; | 1034 | return retval; |
| 1035 | } | 1035 | } |
| 1036 | 1036 | ||
| 1037 | static void w1_fini(void) | 1037 | static void __exit w1_fini(void) |
| 1038 | { | 1038 | { |
| 1039 | struct w1_master *dev; | 1039 | struct w1_master *dev; |
| 1040 | 1040 | ||
diff --git a/drivers/zorro/zorro.ids b/drivers/zorro/zorro.ids index 0c0f99e2dd62..de24e3decedd 100644 --- a/drivers/zorro/zorro.ids +++ b/drivers/zorro/zorro.ids | |||
| @@ -108,7 +108,7 @@ | |||
| 108 | 0c00 500XP/SupraDrive WordSync [SCSI Host Adapter] | 108 | 0c00 500XP/SupraDrive WordSync [SCSI Host Adapter] |
| 109 | 0d00 SupraDrive WordSync II [SCSI Host Adapter] | 109 | 0d00 SupraDrive WordSync II [SCSI Host Adapter] |
| 110 | 1000 2400zi+ [Modem] | 110 | 1000 2400zi+ [Modem] |
| 111 | 0422 Computer Systems Assosiates | 111 | 0422 Computer Systems Associates |
| 112 | 1100 Magnum 40 [Accelerator and SCSI Host Adapter] | 112 | 1100 Magnum 40 [Accelerator and SCSI Host Adapter] |
| 113 | 1500 12 Gauge [SCSI Host Adapter] | 113 | 1500 12 Gauge [SCSI Host Adapter] |
| 114 | 0439 Marc Michael Groth | 114 | 0439 Marc Michael Groth |
diff --git a/fs/affs/bitmap.c b/fs/affs/bitmap.c index dc5ef14bdc1c..8306d53307ed 100644 --- a/fs/affs/bitmap.c +++ b/fs/affs/bitmap.c | |||
| @@ -128,7 +128,7 @@ err_range: | |||
| 128 | /* | 128 | /* |
| 129 | * Allocate a block in the given allocation zone. | 129 | * Allocate a block in the given allocation zone. |
| 130 | * Since we have to byte-swap the bitmap on little-endian | 130 | * Since we have to byte-swap the bitmap on little-endian |
| 131 | * machines, this is rather expensive. Therefor we will | 131 | * machines, this is rather expensive. Therefore we will |
| 132 | * preallocate up to 16 blocks from the same word, if | 132 | * preallocate up to 16 blocks from the same word, if |
| 133 | * possible. We are not doing preallocations in the | 133 | * possible. We are not doing preallocations in the |
| 134 | * header zone, though. | 134 | * header zone, though. |
diff --git a/fs/binfmt_elf_fdpic.c b/fs/binfmt_elf_fdpic.c index 6d6a16c5e9bb..2c32d00a6690 100644 --- a/fs/binfmt_elf_fdpic.c +++ b/fs/binfmt_elf_fdpic.c | |||
| @@ -1374,7 +1374,7 @@ static inline void fill_note(struct memelfnote *note, const char *name, int type | |||
| 1374 | 1374 | ||
| 1375 | /* | 1375 | /* |
| 1376 | * fill up all the fields in prstatus from the given task struct, except | 1376 | * fill up all the fields in prstatus from the given task struct, except |
| 1377 | * registers which need to be filled up seperately. | 1377 | * registers which need to be filled up separately. |
| 1378 | */ | 1378 | */ |
| 1379 | static void fill_prstatus(struct elf_prstatus *prstatus, | 1379 | static void fill_prstatus(struct elf_prstatus *prstatus, |
| 1380 | struct task_struct *p, long signr) | 1380 | struct task_struct *p, long signr) |
| @@ -264,13 +264,12 @@ EXPORT_SYMBOL(bio_init); | |||
| 264 | * bio_alloc_bioset - allocate a bio for I/O | 264 | * bio_alloc_bioset - allocate a bio for I/O |
| 265 | * @gfp_mask: the GFP_ mask given to the slab allocator | 265 | * @gfp_mask: the GFP_ mask given to the slab allocator |
| 266 | * @nr_iovecs: number of iovecs to pre-allocate | 266 | * @nr_iovecs: number of iovecs to pre-allocate |
| 267 | * @bs: the bio_set to allocate from. If %NULL, just use kmalloc | 267 | * @bs: the bio_set to allocate from. |
| 268 | * | 268 | * |
| 269 | * Description: | 269 | * Description: |
| 270 | * bio_alloc_bioset will first try its own mempool to satisfy the allocation. | 270 | * bio_alloc_bioset will try its own mempool to satisfy the allocation. |
| 271 | * If %__GFP_WAIT is set then we will block on the internal pool waiting | 271 | * If %__GFP_WAIT is set then we will block on the internal pool waiting |
| 272 | * for a &struct bio to become free. If a %NULL @bs is passed in, we will | 272 | * for a &struct bio to become free. |
| 273 | * fall back to just using @kmalloc to allocate the required memory. | ||
| 274 | * | 273 | * |
| 275 | * Note that the caller must set ->bi_destructor on successful return | 274 | * Note that the caller must set ->bi_destructor on successful return |
| 276 | * of a bio, to do the appropriate freeing of the bio once the reference | 275 | * of a bio, to do the appropriate freeing of the bio once the reference |
diff --git a/fs/buffer.c b/fs/buffer.c index 6fa530256bfd..1d920bab5e70 100644 --- a/fs/buffer.c +++ b/fs/buffer.c | |||
| @@ -2893,7 +2893,7 @@ int block_write_full_page_endio(struct page *page, get_block_t *get_block, | |||
| 2893 | 2893 | ||
| 2894 | /* | 2894 | /* |
| 2895 | * The page straddles i_size. It must be zeroed out on each and every | 2895 | * The page straddles i_size. It must be zeroed out on each and every |
| 2896 | * writepage invokation because it may be mmapped. "A file is mapped | 2896 | * writepage invocation because it may be mmapped. "A file is mapped |
| 2897 | * in multiples of the page size. For a file that is not a multiple of | 2897 | * in multiples of the page size. For a file that is not a multiple of |
| 2898 | * the page size, the remaining memory is zeroed when mapped, and | 2898 | * the page size, the remaining memory is zeroed when mapped, and |
| 2899 | * writes to that region are not written out to the file." | 2899 | * writes to that region are not written out to the file." |
diff --git a/fs/cifs/asn1.c b/fs/cifs/asn1.c index 20692fbfdb24..a20bea598933 100644 --- a/fs/cifs/asn1.c +++ b/fs/cifs/asn1.c | |||
| @@ -136,7 +136,7 @@ asn1_enum_decode(struct asn1_ctx *ctx, __le32 *val) | |||
| 136 | return 0; | 136 | return 0; |
| 137 | } | 137 | } |
| 138 | 138 | ||
| 139 | ch = *(ctx->pointer)++; /* ch has 0xa, ptr points to lenght octet */ | 139 | ch = *(ctx->pointer)++; /* ch has 0xa, ptr points to length octet */ |
| 140 | if ((ch) == ASN1_ENUM) /* if ch value is ENUM, 0xa */ | 140 | if ((ch) == ASN1_ENUM) /* if ch value is ENUM, 0xa */ |
| 141 | *val = *(++(ctx->pointer)); /* value has enum value */ | 141 | *val = *(++(ctx->pointer)); /* value has enum value */ |
| 142 | else | 142 | else |
diff --git a/fs/cifs/cifs_dfs_ref.c b/fs/cifs/cifs_dfs_ref.c index b44ce0a0711c..b1d61d0bdfc7 100644 --- a/fs/cifs/cifs_dfs_ref.c +++ b/fs/cifs/cifs_dfs_ref.c | |||
| @@ -54,7 +54,7 @@ void cifs_dfs_release_automount_timer(void) | |||
| 54 | * Extracts sharename form full UNC. | 54 | * Extracts sharename form full UNC. |
| 55 | * i.e. strips from UNC trailing path that is not part of share | 55 | * i.e. strips from UNC trailing path that is not part of share |
| 56 | * name and fixup missing '\' in the begining of DFS node refferal | 56 | * name and fixup missing '\' in the begining of DFS node refferal |
| 57 | * if neccessary. | 57 | * if necessary. |
| 58 | * Returns pointer to share name on success or ERR_PTR on error. | 58 | * Returns pointer to share name on success or ERR_PTR on error. |
| 59 | * Caller is responsible for freeing returned string. | 59 | * Caller is responsible for freeing returned string. |
| 60 | */ | 60 | */ |
diff --git a/fs/cifs/cifssmb.c b/fs/cifs/cifssmb.c index 9d17df3e0768..611835899844 100644 --- a/fs/cifs/cifssmb.c +++ b/fs/cifs/cifssmb.c | |||
| @@ -3886,7 +3886,7 @@ parse_DFS_referrals(TRANSACTION2_GET_DFS_REFER_RSP *pSMBr, | |||
| 3886 | goto parse_DFS_referrals_exit; | 3886 | goto parse_DFS_referrals_exit; |
| 3887 | } | 3887 | } |
| 3888 | 3888 | ||
| 3889 | /* collect neccessary data from referrals */ | 3889 | /* collect necessary data from referrals */ |
| 3890 | for (i = 0; i < *num_of_nodes; i++) { | 3890 | for (i = 0; i < *num_of_nodes; i++) { |
| 3891 | char *temp; | 3891 | char *temp; |
| 3892 | int max_len; | 3892 | int max_len; |
diff --git a/fs/dlm/member.c b/fs/dlm/member.c index 84f70bfb0baf..b12532e553f8 100644 --- a/fs/dlm/member.c +++ b/fs/dlm/member.c | |||
| @@ -312,7 +312,7 @@ int dlm_ls_stop(struct dlm_ls *ls) | |||
| 312 | /* | 312 | /* |
| 313 | * This in_recovery lock does two things: | 313 | * This in_recovery lock does two things: |
| 314 | * 1) Keeps this function from returning until all threads are out | 314 | * 1) Keeps this function from returning until all threads are out |
| 315 | * of locking routines and locking is truely stopped. | 315 | * of locking routines and locking is truly stopped. |
| 316 | * 2) Keeps any new requests from being processed until it's unlocked | 316 | * 2) Keeps any new requests from being processed until it's unlocked |
| 317 | * when recovery is complete. | 317 | * when recovery is complete. |
| 318 | */ | 318 | */ |
diff --git a/fs/ext3/super.c b/fs/ext3/super.c index e844accbf55d..1bee604cc6cd 100644 --- a/fs/ext3/super.c +++ b/fs/ext3/super.c | |||
| @@ -164,7 +164,7 @@ void ext3_msg(struct super_block *sb, const char *prefix, | |||
| 164 | * write out the superblock safely. | 164 | * write out the superblock safely. |
| 165 | * | 165 | * |
| 166 | * We'll just use the journal_abort() error code to record an error in | 166 | * We'll just use the journal_abort() error code to record an error in |
| 167 | * the journal instead. On recovery, the journal will compain about | 167 | * the journal instead. On recovery, the journal will complain about |
| 168 | * that error until we've noted it down and cleared it. | 168 | * that error until we've noted it down and cleared it. |
| 169 | */ | 169 | */ |
| 170 | 170 | ||
diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c index 506713a2ebd8..54df209d2eed 100644 --- a/fs/ext4/mballoc.c +++ b/fs/ext4/mballoc.c | |||
| @@ -69,7 +69,7 @@ | |||
| 69 | * | 69 | * |
| 70 | * pa_lstart -> the logical start block for this prealloc space | 70 | * pa_lstart -> the logical start block for this prealloc space |
| 71 | * pa_pstart -> the physical start block for this prealloc space | 71 | * pa_pstart -> the physical start block for this prealloc space |
| 72 | * pa_len -> lenght for this prealloc space | 72 | * pa_len -> length for this prealloc space |
| 73 | * pa_free -> free space available in this prealloc space | 73 | * pa_free -> free space available in this prealloc space |
| 74 | * | 74 | * |
| 75 | * The inode preallocation space is used looking at the _logical_ start | 75 | * The inode preallocation space is used looking at the _logical_ start |
diff --git a/fs/ext4/super.c b/fs/ext4/super.c index 2b83b96cb2eb..6ea6b67c70a2 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c | |||
| @@ -302,7 +302,7 @@ void ext4_journal_abort_handle(const char *caller, const char *err_fn, | |||
| 302 | * write out the superblock safely. | 302 | * write out the superblock safely. |
| 303 | * | 303 | * |
| 304 | * We'll just use the jbd2_journal_abort() error code to record an error in | 304 | * We'll just use the jbd2_journal_abort() error code to record an error in |
| 305 | * the journal instead. On recovery, the journal will compain about | 305 | * the journal instead. On recovery, the journal will complain about |
| 306 | * that error until we've noted it down and cleared it. | 306 | * that error until we've noted it down and cleared it. |
| 307 | */ | 307 | */ |
| 308 | 308 | ||
diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c index 1a822ce2b24b..ec14d19ce501 100644 --- a/fs/fuse/inode.c +++ b/fs/fuse/inode.c | |||
| @@ -850,7 +850,7 @@ static void fuse_send_init(struct fuse_conn *fc, struct fuse_req *req) | |||
| 850 | req->in.args[0].size = sizeof(*arg); | 850 | req->in.args[0].size = sizeof(*arg); |
| 851 | req->in.args[0].value = arg; | 851 | req->in.args[0].value = arg; |
| 852 | req->out.numargs = 1; | 852 | req->out.numargs = 1; |
| 853 | /* Variable length arguement used for backward compatibility | 853 | /* Variable length argument used for backward compatibility |
| 854 | with interface version < 7.5. Rest of init_out is zeroed | 854 | with interface version < 7.5. Rest of init_out is zeroed |
| 855 | by do_get_request(), so a short reply is not a problem */ | 855 | by do_get_request(), so a short reply is not a problem */ |
| 856 | req->out.argvar = 1; | 856 | req->out.argvar = 1; |
diff --git a/fs/gfs2/ops_fstype.c b/fs/gfs2/ops_fstype.c index a054b526dc08..c1309ed1c496 100644 --- a/fs/gfs2/ops_fstype.c +++ b/fs/gfs2/ops_fstype.c | |||
| @@ -1001,7 +1001,7 @@ static const struct lm_lockops nolock_ops = { | |||
| 1001 | /** | 1001 | /** |
| 1002 | * gfs2_lm_mount - mount a locking protocol | 1002 | * gfs2_lm_mount - mount a locking protocol |
| 1003 | * @sdp: the filesystem | 1003 | * @sdp: the filesystem |
| 1004 | * @args: mount arguements | 1004 | * @args: mount arguments |
| 1005 | * @silent: if 1, don't complain if the FS isn't a GFS2 fs | 1005 | * @silent: if 1, don't complain if the FS isn't a GFS2 fs |
| 1006 | * | 1006 | * |
| 1007 | * Returns: errno | 1007 | * Returns: errno |
diff --git a/fs/jbd/transaction.c b/fs/jbd/transaction.c index 99e9fea11077..5ae71e75a491 100644 --- a/fs/jbd/transaction.c +++ b/fs/jbd/transaction.c | |||
| @@ -1398,7 +1398,7 @@ int journal_stop(handle_t *handle) | |||
| 1398 | * the case where our storage is so fast that it is more optimal to go | 1398 | * the case where our storage is so fast that it is more optimal to go |
| 1399 | * ahead and force a flush and wait for the transaction to be committed | 1399 | * ahead and force a flush and wait for the transaction to be committed |
| 1400 | * than it is to wait for an arbitrary amount of time for new writers to | 1400 | * than it is to wait for an arbitrary amount of time for new writers to |
| 1401 | * join the transaction. We acheive this by measuring how long it takes | 1401 | * join the transaction. We achieve this by measuring how long it takes |
| 1402 | * to commit a transaction, and compare it with how long this | 1402 | * to commit a transaction, and compare it with how long this |
| 1403 | * transaction has been running, and if run time < commit time then we | 1403 | * transaction has been running, and if run time < commit time then we |
| 1404 | * sleep for the delta and commit. This greatly helps super fast disks | 1404 | * sleep for the delta and commit. This greatly helps super fast disks |
diff --git a/fs/locks.c b/fs/locks.c index ae9ded026b7c..ab24d49fc048 100644 --- a/fs/locks.c +++ b/fs/locks.c | |||
| @@ -1455,7 +1455,7 @@ EXPORT_SYMBOL(generic_setlease); | |||
| 1455 | * leases held by processes on this node. | 1455 | * leases held by processes on this node. |
| 1456 | * | 1456 | * |
| 1457 | * There is also no break_lease method; filesystems that | 1457 | * There is also no break_lease method; filesystems that |
| 1458 | * handle their own leases shoud break leases themselves from the | 1458 | * handle their own leases should break leases themselves from the |
| 1459 | * filesystem's open, create, and (on truncate) setattr methods. | 1459 | * filesystem's open, create, and (on truncate) setattr methods. |
| 1460 | * | 1460 | * |
| 1461 | * Warning: the only current setlease methods exist only to disable | 1461 | * Warning: the only current setlease methods exist only to disable |
diff --git a/fs/mpage.c b/fs/mpage.c index 42381bd6543b..598d54e200eb 100644 --- a/fs/mpage.c +++ b/fs/mpage.c | |||
| @@ -561,7 +561,7 @@ page_is_mapped: | |||
| 561 | if (page->index >= end_index) { | 561 | if (page->index >= end_index) { |
| 562 | /* | 562 | /* |
| 563 | * The page straddles i_size. It must be zeroed out on each | 563 | * The page straddles i_size. It must be zeroed out on each |
| 564 | * and every writepage invokation because it may be mmapped. | 564 | * and every writepage invocation because it may be mmapped. |
| 565 | * "A file is mapped in multiples of the page size. For a file | 565 | * "A file is mapped in multiples of the page size. For a file |
| 566 | * that is not a multiple of the page size, the remaining memory | 566 | * that is not a multiple of the page size, the remaining memory |
| 567 | * is zeroed when mapped, and writes to that region are not | 567 | * is zeroed when mapped, and writes to that region are not |
diff --git a/fs/namei.c b/fs/namei.c index 48e60a187325..1c0fca6e899e 100644 --- a/fs/namei.c +++ b/fs/namei.c | |||
| @@ -2544,7 +2544,7 @@ SYSCALL_DEFINE2(link, const char __user *, oldname, const char __user *, newname | |||
| 2544 | * e) conversion from fhandle to dentry may come in the wrong moment - when | 2544 | * e) conversion from fhandle to dentry may come in the wrong moment - when |
| 2545 | * we are removing the target. Solution: we will have to grab ->i_mutex | 2545 | * we are removing the target. Solution: we will have to grab ->i_mutex |
| 2546 | * in the fhandle_to_dentry code. [FIXME - current nfsfh.c relies on | 2546 | * in the fhandle_to_dentry code. [FIXME - current nfsfh.c relies on |
| 2547 | * ->i_mutex on parents, which works but leads to some truely excessive | 2547 | * ->i_mutex on parents, which works but leads to some truly excessive |
| 2548 | * locking]. | 2548 | * locking]. |
| 2549 | */ | 2549 | */ |
| 2550 | static int vfs_rename_dir(struct inode *old_dir, struct dentry *old_dentry, | 2550 | static int vfs_rename_dir(struct inode *old_dir, struct dentry *old_dentry, |
diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c index 78c7e24e5129..c47b4d7bafa7 100644 --- a/fs/nfsd/nfs4xdr.c +++ b/fs/nfsd/nfs4xdr.c | |||
| @@ -1528,7 +1528,7 @@ static void write_cinfo(__be32 **p, struct nfsd4_change_info *c) | |||
| 1528 | } } while (0); | 1528 | } } while (0); |
| 1529 | 1529 | ||
| 1530 | /* Encode as an array of strings the string given with components | 1530 | /* Encode as an array of strings the string given with components |
| 1531 | * seperated @sep. | 1531 | * separated @sep. |
| 1532 | */ | 1532 | */ |
| 1533 | static __be32 nfsd4_encode_components(char sep, char *components, | 1533 | static __be32 nfsd4_encode_components(char sep, char *components, |
| 1534 | __be32 **pp, int *buflen) | 1534 | __be32 **pp, int *buflen) |
diff --git a/fs/ntfs/ChangeLog b/fs/ntfs/ChangeLog deleted file mode 100644 index 37c11e194372..000000000000 --- a/fs/ntfs/ChangeLog +++ /dev/null | |||
| @@ -1,1702 +0,0 @@ | |||
| 1 | ToDo/Notes: | ||
| 2 | - Find and fix bugs. | ||
| 3 | - The only places in the kernel where a file is resized are | ||
| 4 | ntfs_file_write*() and ntfs_truncate() for both of which i_mutex is | ||
| 5 | held. Just have to be careful in read-/writepage and other helpers | ||
| 6 | not running under i_mutex that we play nice. Also need to be careful | ||
| 7 | with initialized_size extension in ntfs_file_write*() and writepage. | ||
| 8 | UPDATE: The only things that need to be checked are the compressed | ||
| 9 | write and the other attribute resize/write cases like index | ||
| 10 | attributes, etc. For now none of these are implemented so are safe. | ||
| 11 | - Implement filling in of holes in aops.c::ntfs_writepage() and its | ||
| 12 | helpers. | ||
| 13 | - Implement mft.c::sync_mft_mirror_umount(). We currently will just | ||
| 14 | leave the volume dirty on umount if the final iput(vol->mft_ino) | ||
| 15 | causes a write of any mirrored mft records due to the mft mirror | ||
| 16 | inode having been discarded already. Whether this can actually ever | ||
| 17 | happen is unclear however so it is worth waiting until someone hits | ||
| 18 | the problem. | ||
| 19 | |||
| 20 | 2.1.29 - Fix a deadlock at mount time. | ||
| 21 | |||
| 22 | - During mount the VFS holds s_umount lock on the superblock. So when | ||
| 23 | we try to empty the journal $LogFile contents by calling | ||
| 24 | ntfs_attr_set() when the machine does not have much memory and the | ||
| 25 | journal is large ntfs_attr_set() results in the VM trying to balance | ||
| 26 | dirty pages which in turn tries to that the s_umount lock and thus we | ||
| 27 | get a deadlock. The solution is to not use ntfs_attr_set() and | ||
| 28 | instead do the zeroing by hand at the block level rather than page | ||
| 29 | cache level. | ||
| 30 | - Fix sparse warnings. | ||
| 31 | |||
| 32 | 2.1.28 - Fix a deadlock. | ||
| 33 | |||
| 34 | - Fix deadlock in fs/ntfs/inode.c::ntfs_put_inode(). Thanks to Sergey | ||
| 35 | Vlasov for the report and detailed analysis of the deadlock. The fix | ||
| 36 | involved getting rid of ntfs_put_inode() altogether and hence NTFS no | ||
| 37 | longer has a ->put_inode super operation. | ||
| 38 | |||
| 39 | 2.1.27 - Various bug fixes and cleanups. | ||
| 40 | |||
| 41 | - Fix two compiler warnings on Alpha. Thanks to Andrew Morton for | ||
| 42 | reporting them. | ||
| 43 | - Fix an (innocent) off-by-one error in the runlist code. | ||
| 44 | - Fix a buggette in an "should be impossible" case handling where we | ||
| 45 | continued the attribute lookup loop instead of aborting it. | ||
| 46 | - Use buffer_migrate_page() for the ->migratepage function of all ntfs | ||
| 47 | address space operations. | ||
| 48 | - Fix comparison of $MFT and $MFTMirr to not bail out when there are | ||
| 49 | unused, invalid mft records which are the same in both $MFT and | ||
| 50 | $MFTMirr. | ||
| 51 | - Add support for sparse files which have a compression unit of 0. | ||
| 52 | - Remove all the make_bad_inode() calls. This should only be called | ||
| 53 | from read inode and new inode code paths. | ||
| 54 | - Limit name length in fs/ntfs/unistr.c::ntfs_nlstoucs() to maximum | ||
| 55 | allowed by NTFS, i.e. 255 Unicode characters, not including the | ||
| 56 | terminating NULL (which is not stored on disk). | ||
| 57 | - Improve comments on file attribute flags in fs/ntfs/layout.h. | ||
| 58 | - Fix a bug in fs/ntfs/inode.c::ntfs_read_locked_index_inode() where we | ||
| 59 | forgot to update a temporary variable so loading index inodes which | ||
| 60 | have an index allocation attribute failed. | ||
| 61 | - Add a missing call to flush_dcache_mft_record_page() in | ||
| 62 | fs/ntfs/inode.c::ntfs_write_inode(). | ||
| 63 | - Handle the recently introduced -ENAMETOOLONG return value from | ||
| 64 | fs/ntfs/unistr.c::ntfs_nlstoucs() in fs/ntfs/namei.c::ntfs_lookup(). | ||
| 65 | - Semaphore to mutex conversion. (Ingo Molnar) | ||
| 66 | |||
| 67 | 2.1.26 - Minor bug fixes and updates. | ||
| 68 | |||
| 69 | - Fix a potential overflow in file.c where a cast to s64 was missing in | ||
| 70 | a left shift of a page index. | ||
| 71 | - The struct inode has had its i_sem semaphore changed to a mutex named | ||
| 72 | i_mutex. | ||
| 73 | - We have struct kmem_cache now so use it instead of the typedef | ||
| 74 | kmem_cache_t. (Pekka Enberg) | ||
| 75 | - Implement support for sector sizes above 512 bytes (up to the maximum | ||
| 76 | supported by NTFS which is 4096 bytes). | ||
| 77 | - Do more detailed reporting of why we cannot mount read-write by | ||
| 78 | special casing the VOLUME_MODIFIED_BY_CHKDSK flag. | ||
| 79 | - Miscellaneous updates to layout.h. | ||
| 80 | - Cope with attribute list attribute having invalid flags. Windows | ||
| 81 | copes with this and even chkdsk does not detect or fix this so we | ||
| 82 | have to cope with it, too. Thanks to Pawel Kot for reporting the | ||
| 83 | problem. | ||
| 84 | |||
| 85 | 2.1.25 - (Almost) fully implement write(2) and truncate(2). | ||
| 86 | |||
| 87 | - Change ntfs_map_runlist_nolock(), ntfs_attr_find_vcn_nolock() and | ||
| 88 | {__,}ntfs_cluster_free() to also take an optional attribute search | ||
| 89 | context as argument. This allows calling these functions with the | ||
| 90 | mft record mapped. Update all callers. | ||
| 91 | - Fix potential deadlock in ntfs_mft_data_extend_allocation_nolock() | ||
| 92 | error handling by passing in the active search context when calling | ||
| 93 | ntfs_cluster_free(). | ||
| 94 | - Change ntfs_cluster_alloc() to take an extra boolean parameter | ||
| 95 | specifying whether the cluster are being allocated to extend an | ||
| 96 | attribute or to fill a hole. | ||
| 97 | - Change ntfs_attr_make_non_resident() to call ntfs_cluster_alloc() | ||
| 98 | with @is_extension set to TRUE and remove the runlist terminator | ||
| 99 | fixup code as this is now done by ntfs_cluster_alloc(). | ||
| 100 | - Change ntfs_attr_make_non_resident to take the attribute value size | ||
| 101 | as an extra parameter. This is needed since we need to know the size | ||
| 102 | before we can map the mft record and our callers always know it. The | ||
| 103 | reason we cannot simply read the size from the vfs inode i_size is | ||
| 104 | that this is not necessarily uptodate. This happens when | ||
| 105 | ntfs_attr_make_non_resident() is called in the ->truncate call path. | ||
| 106 | - Fix ntfs_attr_make_non_resident() to update the vfs inode i_blocks | ||
| 107 | which is zero for a resident attribute but should no longer be zero | ||
| 108 | once the attribute is non-resident as it then has real clusters | ||
| 109 | allocated. | ||
| 110 | - Add fs/ntfs/attrib.[hc]::ntfs_attr_extend_allocation(), a function to | ||
| 111 | extend the allocation of an attributes. Optionally, the data size, | ||
| 112 | but not the initialized size can be extended, too. | ||
| 113 | - Implement fs/ntfs/inode.[hc]::ntfs_truncate(). It only supports | ||
| 114 | uncompressed and unencrypted files and it never creates sparse files | ||
| 115 | at least for the moment (making a file sparse requires us to modify | ||
| 116 | its directory entries and we do not support directory operations at | ||
| 117 | the moment). Also, support for highly fragmented files, i.e. ones | ||
| 118 | whose data attribute is split across multiple extents, is severly | ||
| 119 | limited. When such a case is encountered, EOPNOTSUPP is returned. | ||
| 120 | - Enable ATTR_SIZE attribute changes in ntfs_setattr(). This completes | ||
| 121 | the initial implementation of file truncation. Now both open(2)ing | ||
| 122 | a file with the O_TRUNC flag and the {,f}truncate(2) system calls | ||
| 123 | will resize a file appropriately. The limitations are that only | ||
| 124 | uncompressed and unencrypted files are supported. Also, there is | ||
| 125 | only very limited support for highly fragmented files (the ones whose | ||
| 126 | $DATA attribute is split into multiple attribute extents). | ||
| 127 | - In attrib.c::ntfs_attr_set() call balance_dirty_pages_ratelimited() | ||
| 128 | and cond_resched() in the main loop as we could be dirtying a lot of | ||
| 129 | pages and this ensures we play nice with the VM and the system as a | ||
| 130 | whole. | ||
| 131 | - Implement file operations ->write, ->aio_write, ->writev for regular | ||
| 132 | files. This replaces the old use of generic_file_write(), et al and | ||
| 133 | the address space operations ->prepare_write and ->commit_write. | ||
| 134 | This means that both sparse and non-sparse (unencrypted and | ||
| 135 | uncompressed) files can now be extended using the normal write(2) | ||
| 136 | code path. There are two limitations at present and these are that | ||
| 137 | we never create sparse files and that we only have limited support | ||
| 138 | for highly fragmented files, i.e. ones whose data attribute is split | ||
| 139 | across multiple extents. When such a case is encountered, | ||
| 140 | EOPNOTSUPP is returned. | ||
| 141 | - $EA attributes can be both resident and non-resident. | ||
| 142 | - Use %z for size_t to fix compilation warnings. (Andrew Morton) | ||
| 143 | - Fix compilation warnings with gcc-4.0.2 on SUSE 10.0. | ||
| 144 | - Document extended attribute ($EA) NEED_EA flag. (Based on libntfs | ||
| 145 | patch by Yura Pakhuchiy.) | ||
| 146 | |||
| 147 | 2.1.24 - Lots of bug fixes and support more clean journal states. | ||
| 148 | |||
| 149 | - Support journals ($LogFile) which have been modified by chkdsk. This | ||
| 150 | means users can boot into Windows after we marked the volume dirty. | ||
| 151 | The Windows boot will run chkdsk and then reboot. The user can then | ||
| 152 | immediately boot into Linux rather than having to do a full Windows | ||
| 153 | boot first before rebooting into Linux and we will recognize such a | ||
| 154 | journal and empty it as it is clean by definition. Note, this only | ||
| 155 | works if chkdsk left the journal in an obviously clean state. | ||
| 156 | - Support journals ($LogFile) with only one restart page as well as | ||
| 157 | journals with two different restart pages. We sanity check both and | ||
| 158 | either use the only sane one or the more recent one of the two in the | ||
| 159 | case that both are valid. | ||
| 160 | - Add fs/ntfs/malloc.h::ntfs_malloc_nofs_nofail() which is analogous to | ||
| 161 | ntfs_malloc_nofs() but it performs allocations with __GFP_NOFAIL and | ||
| 162 | hence cannot fail. | ||
| 163 | - Use ntfs_malloc_nofs_nofail() in the two critical regions in | ||
| 164 | fs/ntfs/runlist.c::ntfs_runlists_merge(). This means we no longer | ||
| 165 | need to panic() if the allocation fails as it now cannot fail. | ||
| 166 | - Fix two nasty runlist merging bugs that had gone unnoticed so far. | ||
| 167 | Thanks to Stefano Picerno for the bug report. | ||
| 168 | - Remove two bogus BUG_ON()s from fs/ntfs/mft.c. | ||
| 169 | - Fix handling of valid but empty mapping pairs array in | ||
| 170 | fs/ntfs/runlist.c::ntfs_mapping_pairs_decompress(). | ||
| 171 | - Report unrepresentable inodes during ntfs_readdir() as KERN_WARNING | ||
| 172 | messages and include the inode number. Thanks to Yura Pakhuchiy for | ||
| 173 | pointing this out. | ||
| 174 | - Change ntfs_rl_truncate_nolock() to throw away the runlist if the new | ||
| 175 | length is zero. | ||
| 176 | - Add runlist.[hc]::ntfs_rl_punch_nolock() which punches a caller | ||
| 177 | specified hole into a runlist. | ||
| 178 | - Fix a bug in fs/ntfs/index.c::ntfs_index_lookup(). When the returned | ||
| 179 | index entry is in the index root, we forgot to set the @ir pointer in | ||
| 180 | the index context. Thanks to Yura Pakhuchiy for finding this bug. | ||
| 181 | - Remove bogus setting of PageError in ntfs_read_compressed_block(). | ||
| 182 | - Add fs/ntfs/attrib.[hc]::ntfs_resident_attr_value_resize(). | ||
| 183 | - Fix a bug in ntfs_map_runlist_nolock() where we forgot to protect | ||
| 184 | access to the allocated size in the ntfs inode with the size lock. | ||
| 185 | - Fix ntfs_attr_vcn_to_lcn_nolock() and ntfs_attr_find_vcn_nolock() to | ||
| 186 | return LCN_ENOENT when there is no runlist and the allocated size is | ||
| 187 | zero. | ||
| 188 | - Fix load_attribute_list() to handle the case of a NULL runlist. | ||
| 189 | - Fix handling of sparse attributes in ntfs_attr_make_non_resident(). | ||
| 190 | - Add BUG() checks to ntfs_attr_make_non_resident() and ntfs_attr_set() | ||
| 191 | to ensure that these functions are never called for compressed or | ||
| 192 | encrypted attributes. | ||
| 193 | - Fix cluster (de)allocators to work when the runlist is NULL and more | ||
| 194 | importantly to take a locked runlist rather than them locking it | ||
| 195 | which leads to lock reversal. | ||
| 196 | - Truncate {a,c,m}time to the ntfs supported time granularity when | ||
| 197 | updating the times in the inode in ntfs_setattr(). | ||
| 198 | - Fixup handling of sparse, compressed, and encrypted attributes in | ||
| 199 | fs/ntfs/inode.c::ntfs_read_locked_{,attr_,index_}inode(), | ||
| 200 | fs/ntfs/aops.c::ntfs_{read,write}page(). | ||
| 201 | - Make ntfs_write_block() not instantiate sparse blocks if they contain | ||
| 202 | only zeroes. | ||
| 203 | - Optimize fs/ntfs/aops.c::ntfs_write_block() by extending the page | ||
| 204 | lock protection over the buffer submission for i/o which allows the | ||
| 205 | removal of the get_bh()/put_bh() pairs for each buffer. | ||
| 206 | - Fix fs/ntfs/aops.c::ntfs_{read,write}_block() to handle the case | ||
| 207 | where a concurrent truncate has truncated the runlist under our feet. | ||
| 208 | - Fix page_has_buffers()/page_buffers() handling in fs/ntfs/aops.c. | ||
| 209 | - In fs/ntfs/aops.c::ntfs_end_buffer_async_read(), use a bit spin lock | ||
| 210 | in the first buffer head instead of a driver global spin lock to | ||
| 211 | improve scalability. | ||
| 212 | - Minor fix to error handling and error message display in | ||
| 213 | fs/ntfs/aops.c::ntfs_prepare_nonresident_write(). | ||
| 214 | - Change the mount options {u,f,d}mask to always parse the number as | ||
| 215 | an octal number to conform to how chmod(1) works, too. Thanks to | ||
| 216 | Giuseppe Bilotta and Horst von Brand for pointing out the errors of | ||
| 217 | my ways. | ||
| 218 | - Fix various bugs in the runlist merging code. (Based on libntfs | ||
| 219 | changes by Richard Russon.) | ||
| 220 | - Fix sparse warnings that have crept in over time. | ||
| 221 | - Change ntfs_cluster_free() to require a write locked runlist on entry | ||
| 222 | since we otherwise get into a lock reversal deadlock if a read locked | ||
| 223 | runlist is passed in. In the process also change it to take an ntfs | ||
| 224 | inode instead of a vfs inode as parameter. | ||
| 225 | - Fix the definition of the CHKD ntfs record magic. It had an off by | ||
| 226 | two error causing it to be CHKB instead of CHKD. | ||
| 227 | - Fix a stupid bug in __ntfs_bitmap_set_bits_in_run() which caused the | ||
| 228 | count to become negative and hence we had a wild memset() scribbling | ||
| 229 | all over the system's ram. | ||
| 230 | |||
| 231 | 2.1.23 - Implement extension of resident files and make writing safe as well as | ||
| 232 | many bug fixes, cleanups, and enhancements... | ||
| 233 | |||
| 234 | - Add printk rate limiting for ntfs_warning() and ntfs_error() when | ||
| 235 | compiled without debug. This avoids a possible denial of service | ||
| 236 | attack. Thanks to Carl-Daniel Hailfinger from SuSE for pointing this | ||
| 237 | out. | ||
| 238 | - Fix compilation warnings on ia64. (Randy Dunlap) | ||
| 239 | - Use i_size_{read,write}() instead of reading i_size by hand and cache | ||
| 240 | the value where apropriate. | ||
| 241 | - Add size_lock to the ntfs_inode structure. This is an rw spinlock | ||
| 242 | and it locks against access to the inode sizes. Note, ->size_lock | ||
| 243 | is also accessed from irq context so you must use the _irqsave and | ||
| 244 | _irqrestore lock and unlock functions, respectively. Protect all | ||
| 245 | accesses to allocated_size, initialized_size, and compressed_size. | ||
| 246 | - Minor optimization to fs/ntfs/super.c::ntfs_statfs() and its helpers. | ||
| 247 | - Implement extension of resident files in the regular file write code | ||
| 248 | paths (fs/ntfs/aops.c::ntfs_{prepare,commit}_write()). At present | ||
| 249 | this only works until the data attribute becomes too big for the mft | ||
| 250 | record after which we abort the write returning -EOPNOTSUPP from | ||
| 251 | ntfs_prepare_write(). | ||
| 252 | - Add disable_sparse mount option together with a per volume sparse | ||
| 253 | enable bit which is set appropriately and a per inode sparse disable | ||
| 254 | bit which is preset on some system file inodes as appropriate. | ||
| 255 | - Enforce that sparse support is disabled on NTFS volumes pre 3.0. | ||
| 256 | - Fix a bug in fs/ntfs/runlist.c::ntfs_mapping_pairs_decompress() in | ||
| 257 | the creation of the unmapped runlist element for the base attribute | ||
| 258 | extent. | ||
| 259 | - Split ntfs_map_runlist() into ntfs_map_runlist() and a non-locking | ||
| 260 | helper ntfs_map_runlist_nolock() which is used by ntfs_map_runlist(). | ||
| 261 | This allows us to map runlist fragments with the runlist lock already | ||
| 262 | held without having to drop and reacquire it around the call. Adapt | ||
| 263 | all callers. | ||
| 264 | - Change ntfs_find_vcn() to ntfs_find_vcn_nolock() which takes a locked | ||
| 265 | runlist. This allows us to find runlist elements with the runlist | ||
| 266 | lock already held without having to drop and reacquire it around the | ||
| 267 | call. Adapt all callers. | ||
| 268 | - Change time to u64 in time.h::ntfs2utc() as it otherwise generates a | ||
| 269 | warning in the do_div() call on sparc32. Thanks to Meelis Roos for | ||
| 270 | the report and analysis of the warning. | ||
| 271 | - Fix a nasty runlist merge bug when merging two holes. | ||
| 272 | - Set the ntfs_inode->allocated_size to the real allocated size in the | ||
| 273 | mft record for resident attributes (fs/ntfs/inode.c). | ||
| 274 | - Small readability cleanup to use "a" instead of "ctx->attr" | ||
| 275 | everywhere (fs/ntfs/inode.c). | ||
| 276 | - Make fs/ntfs/namei.c::ntfs_get_{parent,dentry} static and move the | ||
| 277 | definition of ntfs_export_ops from fs/ntfs/super.c to namei.c. Also, | ||
| 278 | declare ntfs_export_ops in fs/ntfs/ntfs.h. | ||
| 279 | - Correct sparse file handling. The compressed values need to be | ||
| 280 | checked and set in the ntfs inode as done for compressed files and | ||
| 281 | the compressed size needs to be used for vfs inode->i_blocks instead | ||
| 282 | of the allocated size, again, as done for compressed files. | ||
| 283 | - Add AT_EA in addition to AT_DATA to whitelist for being allowed to be | ||
| 284 | non-resident in fs/ntfs/attrib.c::ntfs_attr_can_be_non_resident(). | ||
| 285 | - Add fs/ntfs/attrib.c::ntfs_attr_vcn_to_lcn_nolock() used by the new | ||
| 286 | write code. | ||
| 287 | - Fix bug in fs/ntfs/attrib.c::ntfs_find_vcn_nolock() where after | ||
| 288 | dropping the read lock and taking the write lock we were not checking | ||
| 289 | whether someone else did not already do the work we wanted to do. | ||
| 290 | - Rename fs/ntfs/attrib.c::ntfs_find_vcn_nolock() to | ||
| 291 | ntfs_attr_find_vcn_nolock() and update all callers. | ||
| 292 | - Add fs/ntfs/attrib.[hc]::ntfs_attr_make_non_resident(). | ||
| 293 | - Fix sign of various error return values to be negative in | ||
| 294 | fs/ntfs/lcnalloc.c. | ||
| 295 | - Modify ->readpage and ->writepage (fs/ntfs/aops.c) so they detect and | ||
| 296 | handle the case where an attribute is converted from resident to | ||
| 297 | non-resident by a concurrent file write. | ||
| 298 | - Remove checks for NULL before calling kfree() since kfree() does the | ||
| 299 | checking itself. (Jesper Juhl) | ||
| 300 | - Some utilities modify the boot sector but do not update the checksum. | ||
| 301 | Thus, relax the checking in fs/ntfs/super.c::is_boot_sector_ntfs() to | ||
| 302 | only emit a warning when the checksum is incorrect rather than | ||
| 303 | refusing the mount. Thanks to Bernd Casimir for pointing this | ||
| 304 | problem out. | ||
| 305 | - Update attribute definition handling. | ||
| 306 | - Add NTFS_MAX_CLUSTER_SIZE and NTFS_MAX_PAGES_PER_CLUSTER constants. | ||
| 307 | - Use NTFS_MAX_CLUSTER_SIZE in super.c instead of hard coding 0x10000. | ||
| 308 | - Use MAX_BUF_PER_PAGE instead of variable sized array allocation for | ||
| 309 | better code generation and one less sparse warning in fs/ntfs/aops.c. | ||
| 310 | - Remove spurious void pointer casts from fs/ntfs/. (Pekka Enberg) | ||
| 311 | - Use C99 style structure initialization after memory allocation where | ||
| 312 | possible (fs/ntfs/{attrib.c,index.c,super.c}). Thanks to Al Viro and | ||
| 313 | Pekka Enberg. | ||
| 314 | - Stamp the transaction log ($UsnJrnl), aka user space journal, if it | ||
| 315 | is active on the volume and we are mounting read-write or remounting | ||
| 316 | from read-only to read-write. | ||
| 317 | - Fix a bug in address space operations error recovery code paths where | ||
| 318 | if the runlist was not mapped at all and a mapping error occured we | ||
| 319 | would leave the runlist locked on exit to the function so that the | ||
| 320 | next access to the same file would try to take the lock and deadlock. | ||
| 321 | - Detect the case when Windows has been suspended to disk on the volume | ||
| 322 | to be mounted and if this is the case do not allow (re)mounting | ||
| 323 | read-write. This is done by parsing hiberfil.sys if present. | ||
| 324 | - Fix several occurences of a bug where we would perform 'var & ~const' | ||
| 325 | with a 64-bit variable and a int, i.e. 32-bit, constant. This causes | ||
| 326 | the higher order 32-bits of the 64-bit variable to be zeroed. To fix | ||
| 327 | this cast the 'const' to the same 64-bit type as 'var'. | ||
| 328 | - Change the runlist terminator of the newly allocated cluster(s) to | ||
| 329 | LCN_ENOENT in ntfs_attr_make_non_resident(). Otherwise the runlist | ||
| 330 | code gets confused. | ||
| 331 | - Add an extra parameter @last_vcn to ntfs_get_size_for_mapping_pairs() | ||
| 332 | and ntfs_mapping_pairs_build() to allow the runlist encoding to be | ||
| 333 | partial which is desirable when filling holes in sparse attributes. | ||
| 334 | Update all callers. | ||
| 335 | - Change ntfs_map_runlist_nolock() to only decompress the mapping pairs | ||
| 336 | if the requested vcn is inside it. Otherwise we get into problems | ||
| 337 | when we try to map an out of bounds vcn because we then try to map | ||
| 338 | the already mapped runlist fragment which causes | ||
| 339 | ntfs_mapping_pairs_decompress() to fail and return error. Update | ||
| 340 | ntfs_attr_find_vcn_nolock() accordingly. | ||
| 341 | - Fix a nasty deadlock that appeared in recent kernels. | ||
| 342 | The situation: VFS inode X on a mounted ntfs volume is dirty. For | ||
| 343 | same inode X, the ntfs_inode is dirty and thus corresponding on-disk | ||
| 344 | inode, i.e. mft record, which is in a dirty PAGE_CACHE_PAGE belonging | ||
| 345 | to the table of inodes, i.e. $MFT, inode 0. | ||
| 346 | What happens: | ||
| 347 | Process 1: sys_sync()/umount()/whatever... calls | ||
| 348 | __sync_single_inode() for $MFT -> do_writepages() -> write_page for | ||
| 349 | the dirty page containing the on-disk inode X, the page is now locked | ||
| 350 | -> ntfs_write_mst_block() which clears PageUptodate() on the page to | ||
| 351 | prevent anyone else getting hold of it whilst it does the write out. | ||
| 352 | This is necessary as the on-disk inode needs "fixups" applied before | ||
| 353 | the write to disk which are removed again after the write and | ||
| 354 | PageUptodate is then set again. It then analyses the page looking | ||
| 355 | for dirty on-disk inodes and when it finds one it calls | ||
| 356 | ntfs_may_write_mft_record() to see if it is safe to write this | ||
| 357 | on-disk inode. This then calls ilookup5() to check if the | ||
| 358 | corresponding VFS inode is in icache(). This in turn calls ifind() | ||
| 359 | which waits on the inode lock via wait_on_inode whilst holding the | ||
| 360 | global inode_lock. | ||
| 361 | Process 2: pdflush results in a call to __sync_single_inode for the | ||
| 362 | same VFS inode X on the ntfs volume. This locks the inode (I_LOCK) | ||
| 363 | then calls write-inode -> ntfs_write_inode -> map_mft_record() -> | ||
| 364 | read_cache_page() for the page (in page cache of table of inodes | ||
| 365 | $MFT, inode 0) containing the on-disk inode. This page has | ||
| 366 | PageUptodate() clear because of Process 1 (see above) so | ||
| 367 | read_cache_page() blocks when it tries to take the page lock for the | ||
| 368 | page so it can call ntfs_read_page(). | ||
| 369 | Thus Process 1 is holding the page lock on the page containing the | ||
| 370 | on-disk inode X and it is waiting on the inode X to be unlocked in | ||
| 371 | ifind() so it can write the page out and then unlock the page. | ||
| 372 | And Process 2 is holding the inode lock on inode X and is waiting for | ||
| 373 | the page to be unlocked so it can call ntfs_readpage() or discover | ||
| 374 | that Process 1 set PageUptodate() again and use the page. | ||
| 375 | Thus we have a deadlock due to ifind() waiting on the inode lock. | ||
| 376 | The solution: The fix is to use the newly introduced | ||
| 377 | ilookup5_nowait() which does not wait on the inode's lock and hence | ||
| 378 | avoids the deadlock. This is safe as we do not care about the VFS | ||
| 379 | inode and only use the fact that it is in the VFS inode cache and the | ||
| 380 | fact that the vfs and ntfs inodes are one struct in memory to find | ||
| 381 | the ntfs inode in memory if present. Also, the ntfs inode has its | ||
| 382 | own locking so it does not matter if the vfs inode is locked. | ||
| 383 | - Fix bug in mft record writing where we forgot to set the device in | ||
| 384 | the buffers when mapping them after the VM had discarded them. | ||
| 385 | Thanks to Martin MOKREJÅ for the bug report. | ||
| 386 | |||
| 387 | 2.1.22 - Many bug and race fixes and error handling improvements. | ||
| 388 | |||
| 389 | - Improve error handling in fs/ntfs/inode.c::ntfs_truncate(). | ||
| 390 | - Change fs/ntfs/inode.c::ntfs_truncate() to return an error code | ||
| 391 | instead of void and provide a helper ntfs_truncate_vfs() for the | ||
| 392 | vfs ->truncate method. | ||
| 393 | - Add a new ntfs inode flag NInoTruncateFailed() and modify | ||
| 394 | fs/ntfs/inode.c::ntfs_truncate() to set and clear it appropriately. | ||
| 395 | - Fix min_size and max_size definitions in ATTR_DEF structure in | ||
| 396 | fs/ntfs/layout.h to be signed. | ||
| 397 | - Add attribute definition handling helpers to fs/ntfs/attrib.[hc]: | ||
| 398 | ntfs_attr_size_bounds_check(), ntfs_attr_can_be_non_resident(), and | ||
| 399 | ntfs_attr_can_be_resident(), which in turn use the new private helper | ||
| 400 | ntfs_attr_find_in_attrdef(). | ||
| 401 | - In fs/ntfs/aops.c::mark_ntfs_record_dirty(), take the | ||
| 402 | mapping->private_lock around the dirtying of the buffer heads | ||
| 403 | analagous to the way it is done in __set_page_dirty_buffers(). | ||
| 404 | - Ensure the mft record size does not exceed the PAGE_CACHE_SIZE at | ||
| 405 | mount time as this cannot work with the current implementation. | ||
| 406 | - Check for location of attribute name and improve error handling in | ||
| 407 | general in fs/ntfs/inode.c::ntfs_read_locked_inode() and friends. | ||
| 408 | - In fs/ntfs/aops.c::ntfs_writepage(), if the page is fully outside | ||
| 409 | i_size, i.e. race with truncate, invalidate the buffers on the page | ||
| 410 | so that they become freeable and hence the page does not leak. | ||
| 411 | - Remove unused function fs/ntfs/runlist.c::ntfs_rl_merge(). (Adrian | ||
| 412 | Bunk) | ||
| 413 | - Fix stupid bug in fs/ntfs/attrib.c::ntfs_attr_find() that resulted in | ||
| 414 | a NULL pointer dereference in the error code path when a corrupt | ||
| 415 | attribute was found. (Thanks to Domen Puncer for the bug report.) | ||
| 416 | - Add MODULE_VERSION() to fs/ntfs/super.c. | ||
| 417 | - Make several functions and variables static. (Adrian Bunk) | ||
| 418 | - Modify fs/ntfs/aops.c::mark_ntfs_record_dirty() so it allocates | ||
| 419 | buffers for the page if they are not present and then marks the | ||
| 420 | buffers belonging to the ntfs record dirty. This causes the buffers | ||
| 421 | to become busy and hence they are safe from removal until the page | ||
| 422 | has been written out. | ||
| 423 | - Fix stupid bug in fs/ntfs/attrib.c::ntfs_external_attr_find() in the | ||
| 424 | error handling code path that resulted in a BUG() due to trying to | ||
| 425 | unmap an extent mft record when the mapping of it had failed and it | ||
| 426 | thus was not mapped. (Thanks to Ken MacFerrin for the bug report.) | ||
| 427 | - Drop the runlist lock after the vcn has been read in | ||
| 428 | fs/ntfs/lcnalloc.c::__ntfs_cluster_free(). | ||
| 429 | - Rewrite handling of multi sector transfer errors. We now do not set | ||
| 430 | PageError() when such errors are detected in the async i/o handler | ||
| 431 | fs/ntfs/aops.c::ntfs_end_buffer_async_read(). All users of mst | ||
| 432 | protected attributes now check the magic of each ntfs record as they | ||
| 433 | use it and act appropriately. This has the effect of making errors | ||
| 434 | granular per ntfs record rather than per page which solves the case | ||
| 435 | where we cannot access any of the ntfs records in a page when a | ||
| 436 | single one of them had an mst error. (Thanks to Ken MacFerrin for | ||
| 437 | the bug report.) | ||
| 438 | - Fix error handling in fs/ntfs/quota.c::ntfs_mark_quotas_out_of_date() | ||
| 439 | where we failed to release i_mutex on the $Quota/$Q attribute inode. | ||
| 440 | - Fix bug in handling of bad inodes in fs/ntfs/namei.c::ntfs_lookup(). | ||
| 441 | - Add mapping of unmapped buffers to all remaining code paths, i.e. | ||
| 442 | fs/ntfs/aops.c::ntfs_write_mst_block(), mft.c::ntfs_sync_mft_mirror(), | ||
| 443 | and write_mft_record_nolock(). From now on we require that the | ||
| 444 | complete runlist for the mft mirror is always mapped into memory. | ||
| 445 | - Add creation of buffers to fs/ntfs/mft.c::ntfs_sync_mft_mirror(). | ||
| 446 | - Improve error handling in fs/ntfs/aops.c::ntfs_{read,write}_block(). | ||
| 447 | - Cleanup fs/ntfs/aops.c::ntfs_{read,write}page() since we know that a | ||
| 448 | resident attribute will be smaller than a page which makes the code | ||
| 449 | simpler. Also make the code more tolerant to concurrent ->truncate. | ||
| 450 | |||
| 451 | 2.1.21 - Fix some races and bugs, rewrite mft write code, add mft allocator. | ||
| 452 | |||
| 453 | - Implement extent mft record deallocation | ||
| 454 | fs/ntfs/mft.c::ntfs_extent_mft_record_free(). | ||
| 455 | - Splitt runlist related functions off from attrib.[hc] to runlist.[hc]. | ||
| 456 | - Add vol->mft_data_pos and initialize it at mount time. | ||
| 457 | - Rename init_runlist() to ntfs_init_runlist(), ntfs_vcn_to_lcn() to | ||
| 458 | ntfs_rl_vcn_to_lcn(), decompress_mapping_pairs() to | ||
| 459 | ntfs_mapping_pairs_decompress(), ntfs_merge_runlists() to | ||
| 460 | ntfs_runlists_merge() and adapt all callers. | ||
| 461 | - Add fs/ntfs/runlist.[hc]::ntfs_get_nr_significant_bytes(), | ||
| 462 | ntfs_get_size_for_mapping_pairs(), ntfs_write_significant_bytes(), | ||
| 463 | and ntfs_mapping_pairs_build(), adapted from libntfs. | ||
| 464 | - Make fs/ntfs/lcnalloc.c::ntfs_cluster_free_from_rl_nolock() not | ||
| 465 | static and add a declaration for it to lcnalloc.h. | ||
| 466 | - Add fs/ntfs/lcnalloc.h::ntfs_cluster_free_from_rl() which is a static | ||
| 467 | inline wrapper for ntfs_cluster_free_from_rl_nolock() which takes the | ||
| 468 | cluster bitmap lock for the duration of the call. | ||
| 469 | - Add fs/ntfs/attrib.[hc]::ntfs_attr_record_resize(). | ||
| 470 | - Implement the equivalent of memset() for an ntfs attribute in | ||
| 471 | fs/ntfs/attrib.[hc]::ntfs_attr_set() and switch | ||
| 472 | fs/ntfs/logfile.c::ntfs_empty_logfile() to using it. | ||
| 473 | - Remove unnecessary casts from LCN_* constants. | ||
| 474 | - Implement fs/ntfs/runlist.c::ntfs_rl_truncate_nolock(). | ||
| 475 | - Add MFT_RECORD_OLD as a copy of MFT_RECORD in fs/ntfs/layout.h and | ||
| 476 | change MFT_RECORD to contain the NTFS 3.1+ specific fields. | ||
| 477 | - Add a helper function fs/ntfs/aops.c::mark_ntfs_record_dirty() which | ||
| 478 | marks all buffers belonging to an ntfs record dirty, followed by | ||
| 479 | marking the page the ntfs record is in dirty and also marking the vfs | ||
| 480 | inode containing the ntfs record dirty (I_DIRTY_PAGES). | ||
| 481 | - Switch fs/ntfs/index.h::ntfs_index_entry_mark_dirty() to using the | ||
| 482 | new helper fs/ntfs/aops.c::mark_ntfs_record_dirty() and remove the no | ||
| 483 | longer needed fs/ntfs/index.[hc]::__ntfs_index_entry_mark_dirty(). | ||
| 484 | - Move ntfs_{un,}map_page() from ntfs.h to aops.h and fix resulting | ||
| 485 | include errors. | ||
| 486 | - Move the typedefs for runlist_element and runlist from types.h to | ||
| 487 | runlist.h and fix resulting include errors. | ||
| 488 | - Remove unused {__,}format_mft_record() from fs/ntfs/mft.c. | ||
| 489 | - Modify fs/ntfs/mft.c::__mark_mft_record_dirty() to use the helper | ||
| 490 | mark_ntfs_record_dirty() which also changes the behaviour in that we | ||
| 491 | now set the buffers belonging to the mft record dirty as well as the | ||
| 492 | page itself. | ||
| 493 | - Update fs/ntfs/mft.c::write_mft_record_nolock() and sync_mft_mirror() | ||
| 494 | to cope with the fact that there now are dirty buffers in mft pages. | ||
| 495 | - Update fs/ntfs/inode.c::ntfs_write_inode() to also use the helper | ||
| 496 | mark_ntfs_record_dirty() and thus to set the buffers belonging to the | ||
| 497 | mft record dirty as well as the page itself. | ||
| 498 | - Fix compiler warnings on x86-64 in fs/ntfs/dir.c. (Randy Dunlap, | ||
| 499 | slightly modified by me) | ||
| 500 | - Add fs/ntfs/mft.c::try_map_mft_record() which fails with -EALREADY if | ||
| 501 | the mft record is already locked and otherwise behaves the same way | ||
| 502 | as fs/ntfs/mft.c::map_mft_record(). | ||
| 503 | - Modify fs/ntfs/mft.c::write_mft_record_nolock() so that it only | ||
| 504 | writes the mft record if the buffers belonging to it are dirty. | ||
| 505 | Otherwise we assume that it was written out by other means already. | ||
| 506 | - Attempting to write outside initialized size is _not_ a bug so remove | ||
| 507 | the bug check from fs/ntfs/aops.c::ntfs_write_mst_block(). It is in | ||
| 508 | fact required to write outside initialized size when preparing to | ||
| 509 | extend the initialized size. | ||
| 510 | - Map the page instead of using page_address() before writing to it in | ||
| 511 | fs/ntfs/aops.c::ntfs_mft_writepage(). | ||
| 512 | - Provide exclusion between opening an inode / mapping an mft record | ||
| 513 | and accessing the mft record in fs/ntfs/mft.c::ntfs_mft_writepage() | ||
| 514 | by setting the page not uptodate throughout ntfs_mft_writepage(). | ||
| 515 | - Clear the page uptodate flag in fs/ntfs/aops.c::ntfs_write_mst_block() | ||
| 516 | to ensure noone can see the page whilst the mst fixups are applied. | ||
| 517 | - Add the helper fs/ntfs/mft.c::ntfs_may_write_mft_record() which | ||
| 518 | checks if an mft record may be written out safely obtaining any | ||
| 519 | necessary locks in the process. This is used by | ||
| 520 | fs/ntfs/aops.c::ntfs_write_mst_block(). | ||
| 521 | - Modify fs/ntfs/aops.c::ntfs_write_mst_block() to also work for | ||
| 522 | writing mft records and improve its error handling in the process. | ||
| 523 | Now if any of the records in the page fail to be written out, all | ||
| 524 | other records will be written out instead of aborting completely. | ||
| 525 | - Remove ntfs_mft_aops and update all users to use ntfs_mst_aops. | ||
| 526 | - Modify fs/ntfs/inode.c::ntfs_read_locked_inode() to set the | ||
| 527 | ntfs_mst_aops for all inodes which are NInoMstProtected() and | ||
| 528 | ntfs_aops for all other inodes. | ||
| 529 | - Rename fs/ntfs/mft.c::sync_mft_mirror{,_umount}() to | ||
| 530 | ntfs_sync_mft_mirror{,_umount}() and change their parameters so they | ||
| 531 | no longer require an ntfs inode to be present. Update all callers. | ||
| 532 | - Cleanup the error handling in fs/ntfs/mft.c::ntfs_sync_mft_mirror(). | ||
| 533 | - Clear the page uptodate flag in fs/ntfs/mft.c::ntfs_sync_mft_mirror() | ||
| 534 | to ensure noone can see the page whilst the mst fixups are applied. | ||
| 535 | - Remove the no longer needed fs/ntfs/mft.c::ntfs_mft_writepage() and | ||
| 536 | fs/ntfs/mft.c::try_map_mft_record(). | ||
| 537 | - Fix callers of fs/ntfs/aops.c::mark_ntfs_record_dirty() to call it | ||
| 538 | with the ntfs inode which contains the page rather than the ntfs | ||
| 539 | inode the mft record of which is in the page. | ||
| 540 | - Fix race condition in fs/ntfs/inode.c::ntfs_put_inode() by moving the | ||
| 541 | index inode bitmap inode release code from there to | ||
| 542 | fs/ntfs/inode.c::ntfs_clear_big_inode(). (Thanks to Christoph | ||
| 543 | Hellwig for spotting this.) | ||
| 544 | - Fix race condition in fs/ntfs/inode.c::ntfs_put_inode() by taking the | ||
| 545 | inode semaphore around the code that sets ni->itype.index.bmp_ino to | ||
| 546 | NULL and reorganize the code to optimize it a bit. (Thanks to | ||
| 547 | Christoph Hellwig for spotting this.) | ||
| 548 | - Modify fs/ntfs/aops.c::mark_ntfs_record_dirty() to no longer take the | ||
| 549 | ntfs inode as a parameter as this is confusing and misleading and the | ||
| 550 | needed ntfs inode is available via NTFS_I(page->mapping->host). | ||
| 551 | Adapt all callers to this change. | ||
| 552 | - Modify fs/ntfs/mft.c::write_mft_record_nolock() and | ||
| 553 | fs/ntfs/aops.c::ntfs_write_mst_block() to only check the dirty state | ||
| 554 | of the first buffer in a record and to take this as the ntfs record | ||
| 555 | dirty state. We cannot look at the dirty state for subsequent | ||
| 556 | buffers because we might be racing with | ||
| 557 | fs/ntfs/aops.c::mark_ntfs_record_dirty(). | ||
| 558 | - Move the static inline ntfs_init_big_inode() from fs/ntfs/inode.c to | ||
| 559 | inode.h and make fs/ntfs/inode.c::__ntfs_init_inode() non-static and | ||
| 560 | add a declaration for it to inode.h. Fix some compilation issues | ||
| 561 | that resulted due to #includes and header file interdependencies. | ||
| 562 | - Simplify setup of i_mode in fs/ntfs/inode.c::ntfs_read_locked_inode(). | ||
| 563 | - Add helpers fs/ntfs/layout.h::MK_MREF() and MK_LE_MREF(). | ||
| 564 | - Modify fs/ntfs/mft.c::map_extent_mft_record() to only verify the mft | ||
| 565 | record sequence number if it is specified (i.e. not zero). | ||
| 566 | - Add fs/ntfs/mft.[hc]::ntfs_mft_record_alloc() and various helper | ||
| 567 | functions used by it. | ||
| 568 | - Update Documentation/filesystems/ntfs.txt with instructions on how to | ||
| 569 | use the Device-Mapper driver with NTFS ftdisk/LDM raid. This removes | ||
| 570 | the linear raid problem with the Software RAID / MD driver when one | ||
| 571 | or more of the devices has an odd number of sectors. | ||
| 572 | |||
| 573 | 2.1.20 - Fix two stupid bugs introduced in 2.1.18 release. | ||
| 574 | |||
| 575 | - Fix stupid bug in fs/ntfs/attrib.c::ntfs_attr_reinit_search_ctx() | ||
| 576 | where we did not clear ctx->al_entry but it was still set due to | ||
| 577 | changes in ntfs_attr_lookup() and ntfs_external_attr_find() in | ||
| 578 | particular. | ||
| 579 | - Fix another stupid bug in fs/ntfs/attrib.c::ntfs_external_attr_find() | ||
| 580 | where we forgot to unmap the extent mft record when we had finished | ||
| 581 | enumerating an attribute which caused a bug check to trigger when the | ||
| 582 | VFS calls ->clear_inode. | ||
| 583 | |||
| 584 | 2.1.19 - Many cleanups, improvements, and a minor bug fix. | ||
| 585 | |||
| 586 | - Update ->setattr (fs/ntfs/inode.c::ntfs_setattr()) to refuse to | ||
| 587 | change the uid, gid, and mode of an inode as we do not support NTFS | ||
| 588 | ACLs yet. | ||
| 589 | - Remove BKL use from ntfs_setattr() syncing up with the rest of the | ||
| 590 | kernel. | ||
| 591 | - Get rid of the ugly transparent union in fs/ntfs/dir.c::ntfs_readdir() | ||
| 592 | and ntfs_filldir() as per suggestion from Al Viro. | ||
| 593 | - Change '\0' and L'\0' to simply 0 as per advice from Linus Torvalds. | ||
| 594 | - Update ->truncate (fs/ntfs/inode.c::ntfs_truncate()) to check if the | ||
| 595 | inode size has changed and to only output an error if so. | ||
| 596 | - Rename fs/ntfs/attrib.h::attribute_value_length() to ntfs_attr_size(). | ||
| 597 | - Add le{16,32,64} as well as sle{16,32,64} data types to | ||
| 598 | fs/ntfs/types.h. | ||
| 599 | - Change ntfschar to be le16 instead of u16 in fs/ntfs/types.h. | ||
| 600 | - Add le versions of VCN, LCN, and LSN called leVCN, leLCN, and leLSN, | ||
| 601 | respectively, to fs/ntfs/types.h. | ||
| 602 | - Update endianness conversion macros in fs/ntfs/endian.h to use the | ||
| 603 | new types as appropriate. | ||
| 604 | - Do proper type casting when using sle64_to_cpup() in fs/ntfs/dir.c | ||
| 605 | and index.c. | ||
| 606 | - Add leMFT_REF data type to fs/ntfs/layout.h. | ||
| 607 | - Update all NTFS header files with the new little endian data types. | ||
| 608 | Affected files are fs/ntfs/layout.h, logfile.h, and time.h. | ||
| 609 | - Do proper type casting when using ntfs_is_*_recordp() in | ||
| 610 | fs/ntfs/logfile.c, mft.c, and super.c. | ||
| 611 | - Fix all the sparse bitwise warnings. Had to change all the typedef | ||
| 612 | enums storing little endian values to simple enums plus a typedef for | ||
| 613 | the datatype to make sparse happy. | ||
| 614 | - Fix a bug found by the new sparse bitwise warnings where the default | ||
| 615 | upcase table was defined as a pointer to wchar_t rather than ntfschar | ||
| 616 | in fs/ntfs/ntfs.h and super.c. | ||
| 617 | - Change {const_,}cpu_to_le{16,32}(0) to just 0 as suggested by Al Viro. | ||
| 618 | |||
| 619 | 2.1.18 - Fix scheduling latencies at mount time as well as an endianness bug. | ||
| 620 | |||
| 621 | - Remove vol->nr_mft_records as it was pretty meaningless and optimize | ||
| 622 | the calculation of total/free inodes as used by statfs(). | ||
| 623 | - Fix scheduling latencies in ntfs_fill_super() by dropping the BKL | ||
| 624 | because the code itself is using the ntfs_lock semaphore which | ||
| 625 | provides safe locking. (Ingo Molnar) | ||
| 626 | - Fix a potential bug in fs/ntfs/mft.c::map_extent_mft_record() that | ||
| 627 | could occur in the future for when we start closing/freeing extent | ||
| 628 | inodes if we don't set base_ni->ext.extent_ntfs_inos to NULL after | ||
| 629 | we free it. | ||
| 630 | - Rename {find,lookup}_attr() to ntfs_attr_{find,lookup}() as well as | ||
| 631 | find_external_attr() to ntfs_external_attr_find() to cleanup the | ||
| 632 | namespace a bit and to be more consistent with libntfs. | ||
| 633 | - Rename {{re,}init,get,put}_attr_search_ctx() to | ||
| 634 | ntfs_attr_{{re,}init,get,put}_search_ctx() as well as the type | ||
| 635 | attr_search_context to ntfs_attr_search_ctx. | ||
| 636 | - Force use of ntfs_attr_find() in ntfs_attr_lookup() when searching | ||
| 637 | for the attribute list attribute itself. | ||
| 638 | - Fix endianness bug in ntfs_external_attr_find(). | ||
| 639 | - Change ntfs_{external_,}attr_find() to return 0 on success, -ENOENT | ||
| 640 | if the attribute is not found, and -EIO on real error. In the case | ||
| 641 | of -ENOENT, the search context is updated to describe the attribute | ||
| 642 | before which the attribute being searched for would need to be | ||
| 643 | inserted if such an action were to be desired and in the case of | ||
| 644 | ntfs_external_attr_find() the search context is also updated to | ||
| 645 | indicate the attribute list entry before which the attribute list | ||
| 646 | entry of the attribute being searched for would need to be inserted | ||
| 647 | if such an action were to be desired. Also make ntfs_find_attr() | ||
| 648 | static and remove its prototype from attrib.h as it is not used | ||
| 649 | anywhere other than attrib.c. Update ntfs_attr_lookup() and all | ||
| 650 | callers of ntfs_{external,}attr_{find,lookup}() for the new return | ||
| 651 | values. | ||
| 652 | - Minor cleanup of fs/ntfs/inode.c::ntfs_init_locked_inode(). | ||
| 653 | |||
| 654 | 2.1.17 - Fix bugs in mount time error code paths and other updates. | ||
| 655 | |||
| 656 | - Implement bitmap modification code (fs/ntfs/bitmap.[hc]). This | ||
| 657 | includes functions to set/clear a single bit or a run of bits. | ||
| 658 | - Add fs/ntfs/attrib.[hc]::ntfs_find_vcn() which returns the locked | ||
| 659 | runlist element containing a particular vcn. It also takes care of | ||
| 660 | mapping any needed runlist fragments. | ||
| 661 | - Implement cluster (de-)allocation code (fs/ntfs/lcnalloc.[hc]). | ||
| 662 | - Load attribute definition table from $AttrDef at mount time. | ||
| 663 | - Fix bugs in mount time error code paths involving (de)allocation of | ||
| 664 | the default and volume upcase tables. | ||
| 665 | - Remove ntfs_nr_mounts as it is no longer used. | ||
| 666 | |||
| 667 | 2.1.16 - Implement access time updates, file sync, async io, and read/writev. | ||
| 668 | |||
| 669 | - Add support for readv/writev and aio_read/aio_write (fs/ntfs/file.c). | ||
| 670 | This is done by setting the appropriate file operations pointers to | ||
| 671 | the generic helper functions provided by mm/filemap.c. | ||
| 672 | - Implement fsync, fdatasync, and msync both for files (fs/ntfs/file.c) | ||
| 673 | and directories (fs/ntfs/dir.c). | ||
| 674 | - Add support for {a,m,c}time updates to inode.c::ntfs_write_inode(). | ||
| 675 | Note, except for the root directory and any other system files opened | ||
| 676 | by the user, the system files will not have their access times | ||
| 677 | updated as they are only accessed at the inode level an hence the | ||
| 678 | file level functions which cause the times to be updated are never | ||
| 679 | invoked. | ||
| 680 | |||
| 681 | 2.1.15 - Invalidate quotas when (re)mounting read-write. | ||
| 682 | |||
| 683 | - Add new element itype.index.collation_rule to the ntfs inode | ||
| 684 | structure and set it appropriately in ntfs_read_locked_inode(). | ||
| 685 | - Implement a new inode type "index" to allow efficient access to the | ||
| 686 | indices found in various system files and adapt inode handling | ||
| 687 | accordingly (fs/ntfs/inode.[hc]). An index inode is essentially an | ||
| 688 | attribute inode (NInoAttr() is true) with an attribute type of | ||
| 689 | AT_INDEX_ALLOCATION. As such, it is no longer allowed to call | ||
| 690 | ntfs_attr_iget() with an attribute type of AT_INDEX_ALLOCATION as | ||
| 691 | there would be no way to distinguish between normal attribute inodes | ||
| 692 | and index inodes. The function to obtain an index inode is | ||
| 693 | ntfs_index_iget() and it uses the helper function | ||
| 694 | ntfs_read_locked_index_inode(). Note, we do not overload | ||
| 695 | ntfs_attr_iget() as indices consist of multiple attributes so using | ||
| 696 | ntfs_attr_iget() to obtain an index inode would be confusing. | ||
| 697 | - Ensure that there is no overflow when doing page->index << | ||
| 698 | PAGE_CACHE_SHIFT by casting page->index to s64 in fs/ntfs/aops.c. | ||
| 699 | - Use atomic kmap instead of kmap() in fs/ntfs/aops.c::ntfs_read_page() | ||
| 700 | and ntfs_read_block(). | ||
| 701 | - Use case sensitive attribute lookups instead of case insensitive ones. | ||
| 702 | - Lock all page cache pages belonging to mst protected attributes while | ||
| 703 | accessing them to ensure we never see corrupt data while the page is | ||
| 704 | under writeout. | ||
| 705 | - Add framework for generic ntfs collation (fs/ntfs/collation.[hc]). | ||
| 706 | We have ntfs_is_collation_rule_supported() to check if the collation | ||
| 707 | rule you want to use is supported and ntfs_collation() which actually | ||
| 708 | collates two data items. We currently only support COLLATION_BINARY | ||
| 709 | and COLLATION_NTOFS_ULONG but support for other collation rules will | ||
| 710 | be added as the need arises. | ||
| 711 | - Add a new type, ntfs_index_context, to allow retrieval of an index | ||
| 712 | entry using the corresponding index key. To get an index context, | ||
| 713 | use ntfs_index_ctx_get() and to release it, use ntfs_index_ctx_put(). | ||
| 714 | This also adds a new slab cache for the index contexts. To lookup a | ||
| 715 | key in an index inode, use ntfs_index_lookup(). After modifying an | ||
| 716 | index entry, call ntfs_index_entry_flush_dcache_page() followed by | ||
| 717 | ntfs_index_entry_mark_dirty() to ensure the changes are written out | ||
| 718 | to disk. For details see fs/ntfs/index.[hc]. Note, at present, if | ||
| 719 | an index entry is in the index allocation attribute rather than the | ||
| 720 | index root attribute it will not be written out (you will get a | ||
| 721 | warning message about discarded changes instead). | ||
| 722 | - Load the quota file ($Quota) and check if quota tracking is enabled | ||
| 723 | and if so, mark the quotas out of date. This causes windows to | ||
| 724 | rescan the volume on boot and update all quota entries. | ||
| 725 | - Add a set_page_dirty address space operation for ntfs_m[fs]t_aops. | ||
| 726 | It is simply set to __set_page_dirty_nobuffers() to make sure that | ||
| 727 | running set_page_dirty() on a page containing mft/ntfs records will | ||
| 728 | not affect the dirty state of the page buffers. | ||
| 729 | - Add fs/ntfs/index.c::__ntfs_index_entry_mark_dirty() which sets all | ||
| 730 | buffers that are inside the ntfs record in the page dirty after which | ||
| 731 | it sets the page dirty. This allows ->writepage to only write the | ||
| 732 | dirty index records rather than having to write all the records in | ||
| 733 | the page. Modify fs/ntfs/index.h::ntfs_index_entry_mark_dirty() to | ||
| 734 | use this rather than __set_page_dirty_nobuffers(). | ||
| 735 | - Implement fs/ntfs/aops.c::ntfs_write_mst_block() which enables the | ||
| 736 | writing of page cache pages belonging to mst protected attributes | ||
| 737 | like the index allocation attribute in directory indices and other | ||
| 738 | indices like $Quota/$Q, etc. This means that the quota is now marked | ||
| 739 | out of date on all volumes rather than only on ones where the quota | ||
| 740 | defaults entry is in the index root attribute of the $Quota/$Q index. | ||
| 741 | |||
| 742 | 2.1.14 - Fix an NFSd caused deadlock reported by several users. | ||
| 743 | |||
| 744 | - Modify fs/ntfs/ntfs_readdir() to copy the index root attribute value | ||
| 745 | to a buffer so that we can put the search context and unmap the mft | ||
| 746 | record before calling the filldir() callback. We need to do this | ||
| 747 | because of NFSd which calls ->lookup() from its filldir callback() | ||
| 748 | and this causes NTFS to deadlock as ntfs_lookup() maps the mft record | ||
| 749 | of the directory and since ntfs_readdir() has got it mapped already | ||
| 750 | ntfs_lookup() deadlocks. | ||
| 751 | |||
| 752 | 2.1.13 - Enable overwriting of resident files and housekeeping of system files. | ||
| 753 | |||
| 754 | - Implement writing of mft records (fs/ntfs/mft.[hc]), which includes | ||
| 755 | keeping the mft mirror in sync with the mft when mirrored mft records | ||
| 756 | are written. The functions are write_mft_record{,_nolock}(). The | ||
| 757 | implementation is quite rudimentary for now with lots of things not | ||
| 758 | implemented yet but I am not sure any of them can actually occur so | ||
| 759 | I will wait for people to hit each one and only then implement it. | ||
| 760 | - Commit open system inodes at umount time. This should make it | ||
| 761 | virtually impossible for sync_mft_mirror_umount() to ever be needed. | ||
| 762 | - Implement ->write_inode (fs/ntfs/inode.c::ntfs_write_inode()) for the | ||
| 763 | ntfs super operations. This gives us inode writing via the VFS inode | ||
| 764 | dirty code paths. Note: Access time updates are not implemented yet. | ||
| 765 | - Implement fs/ntfs/mft.[hc]::{,__}mark_mft_record_dirty() and make | ||
| 766 | fs/ntfs/aops.c::ntfs_writepage() and ntfs_commit_write() use it, thus | ||
| 767 | finally enabling resident file overwrite! (-8 This also includes a | ||
| 768 | placeholder for ->writepage (ntfs_mft_writepage()), which for now | ||
| 769 | just redirties the page and returns. Also, at umount time, we for | ||
| 770 | now throw away all mft data page cache pages after the last call to | ||
| 771 | ntfs_commit_inode() in the hope that all inodes will have been | ||
| 772 | written out by then and hence no dirty (meta)data will be lost. We | ||
| 773 | also check for this case and emit an error message telling the user | ||
| 774 | to run chkdsk. | ||
| 775 | - Use set_page_writeback() and end_page_writeback() in the resident | ||
| 776 | attribute code path of fs/ntfs/aops.c::ntfs_writepage() otherwise | ||
| 777 | the radix-tree tag PAGECACHE_TAG_DIRTY remains set even though the | ||
| 778 | page is clean. | ||
| 779 | - Implement ntfs_mft_writepage() so it now checks if any of the mft | ||
| 780 | records in the page are dirty and if so redirties the page and | ||
| 781 | returns. Otherwise it just returns (after doing set_page_writeback(), | ||
| 782 | unlock_page(), end_page_writeback() or the radix-tree tag | ||
| 783 | PAGECACHE_TAG_DIRTY remains set even though the page is clean), thus | ||
| 784 | alowing the VM to do with the page as it pleases. Also, at umount | ||
| 785 | time, now only throw away dirty mft (meta)data pages if dirty inodes | ||
| 786 | are present and ask the user to email us if they see this happening. | ||
| 787 | - Add functions ntfs_{clear,set}_volume_flags(), to modify the volume | ||
| 788 | information flags (fs/ntfs/super.c). | ||
| 789 | - Mark the volume dirty when (re)mounting read-write and mark it clean | ||
| 790 | when unmounting or remounting read-only. If any volume errors are | ||
| 791 | found, the volume is left marked dirty to force chkdsk to run. | ||
| 792 | - Add code to set the NT4 compatibility flag when (re)mounting | ||
| 793 | read-write for newer NTFS versions but leave it commented out for now | ||
| 794 | since we do not make any modifications that are NTFS 1.2 specific yet | ||
| 795 | and since setting this flag breaks Captive-NTFS which is not nice. | ||
| 796 | This code must be enabled once we start writing NTFS 1.2 specific | ||
| 797 | changes otherwise Windows NTFS driver might crash / cause corruption. | ||
| 798 | |||
| 799 | 2.1.12 - Fix the second fix to the decompression engine and some cleanups. | ||
| 800 | |||
| 801 | - Add a new address space operations struct, ntfs_mst_aops, for mst | ||
| 802 | protected attributes. This is because the default ntfs_aops do not | ||
| 803 | make sense with mst protected data and were they to write anything to | ||
| 804 | such an attribute they would cause data corruption so we provide | ||
| 805 | ntfs_mst_aops which does not have any write related operations set. | ||
| 806 | - Cleanup dirty ntfs inode handling (fs/ntfs/inode.[hc]) which also | ||
| 807 | includes an adapted ntfs_commit_inode() and an implementation of | ||
| 808 | ntfs_write_inode() which for now just cleans dirty inodes without | ||
| 809 | writing them (it does emit a warning that this is happening). | ||
| 810 | - Undo the second decompression engine fix (see 2.1.9 release ChangeLog | ||
| 811 | entry) as it was only fixing a theoretical bug but at the same time | ||
| 812 | it badly broke the handling of sparse and uncompressed compression | ||
| 813 | blocks. | ||
| 814 | |||
| 815 | 2.1.11 - Driver internal cleanups. | ||
| 816 | |||
| 817 | - Only build logfile.o if building the driver with read-write support. | ||
| 818 | - Really final white space cleanups. | ||
| 819 | - Use generic_ffs() instead of ffs() in logfile.c which allows the | ||
| 820 | log_page_size variable to be optimized by gcc into a constant. | ||
| 821 | - Rename uchar_t to ntfschar everywhere as uchar_t is unsigned 1-byte | ||
| 822 | char as defined by POSIX and as found on some systems. | ||
| 823 | |||
| 824 | 2.1.10 - Force read-only (re)mounting of volumes with unsupported volume flags. | ||
| 825 | |||
| 826 | - Finish off the white space cleanups (remove trailing spaces, etc). | ||
| 827 | - Clean up ntfs_fill_super() and ntfs_read_inode_mount() by removing | ||
| 828 | the kludges around the first iget(). Instead of (re)setting ->s_op | ||
| 829 | we have the $MFT inode set up by explicit new_inode() / set ->i_ino / | ||
| 830 | insert_inode_hash() / call ntfs_read_inode_mount() directly. This | ||
| 831 | kills the need for second super_operations and allows to return error | ||
| 832 | from ntfs_read_inode_mount() without resorting to ugly "poisoning" | ||
| 833 | tricks. (Al Viro) | ||
| 834 | - Force read-only (re)mounting if any of the following bits are set in | ||
| 835 | the volume information flags: | ||
| 836 | VOLUME_IS_DIRTY, VOLUME_RESIZE_LOG_FILE, | ||
| 837 | VOLUME_UPGRADE_ON_MOUNT, VOLUME_DELETE_USN_UNDERWAY, | ||
| 838 | VOLUME_REPAIR_OBJECT_ID, VOLUME_MODIFIED_BY_CHKDSK | ||
| 839 | To make this easier we define VOLUME_MUST_MOUNT_RO_MASK with all the | ||
| 840 | above bits set so the test is made easy. | ||
| 841 | |||
| 842 | 2.1.9 - Fix two bugs in decompression engine. | ||
| 843 | |||
| 844 | - Fix a bug where we would not always detect that we have reached the | ||
| 845 | end of a compression block because we were ending at minus one byte | ||
| 846 | which is effectively the same as being at the end. The fix is to | ||
| 847 | check whether the uncompressed buffer has been fully filled and if so | ||
| 848 | we assume we have reached the end of the compression block. A big | ||
| 849 | thank you to Marcin Gibuła for the bug report, the assistance in | ||
| 850 | tracking down the bug and testing the fix. | ||
| 851 | - Fix a possible bug where when a compressed read is truncated to the | ||
| 852 | end of the file, the offset inside the last page was not truncated. | ||
| 853 | |||
| 854 | 2.1.8 - Handle $MFT mirror and $LogFile, improve time handling, and cleanups. | ||
| 855 | |||
| 856 | - Use get_bh() instead of manual atomic_inc() in fs/ntfs/compress.c. | ||
| 857 | - Modify fs/ntfs/time.c::ntfs2utc(), get_current_ntfs_time(), and | ||
| 858 | utc2ntfs() to work with struct timespec instead of time_t on the | ||
| 859 | Linux UTC time side thus preserving the full precision of the NTFS | ||
| 860 | time and only loosing up to 99 nano-seconds in the Linux UTC time. | ||
| 861 | - Move fs/ntfs/time.c to fs/ntfs/time.h and make the time functions | ||
| 862 | static inline. | ||
| 863 | - Remove unused ntfs_dirty_inode(). | ||
| 864 | - Cleanup super operations declaration in fs/ntfs/super.c. | ||
| 865 | - Wrap flush_dcache_mft_record_page() in #ifdef NTFS_RW. | ||
| 866 | - Add NInoTestSetFoo() and NInoTestClearFoo() macro magic to | ||
| 867 | fs/ntfs/inode.h and use it to declare NInoTest{Set,Clear}Dirty. | ||
| 868 | - Move typedefs for ntfs_attr and test_t from fs/ntfs/inode.c to | ||
| 869 | fs/ntfs/inode.h so they can be used elsewhere. | ||
| 870 | - Determine the mft mirror size as the number of mirrored mft records | ||
| 871 | and store it in ntfs_volume->mftmirr_size (fs/ntfs/super.c). | ||
| 872 | - Load the mft mirror at mount time and compare the mft records stored | ||
| 873 | in it to the ones in the mft. Force a read-only mount if the two do | ||
| 874 | not match (fs/ntfs/super.c). | ||
| 875 | - Fix type casting related warnings on 64-bit architectures. Thanks | ||
| 876 | to Meelis Roos for reporting them. | ||
| 877 | - Move %L to %ll as %L is floating point and %ll is integer which is | ||
| 878 | what we want. | ||
| 879 | - Read the journal ($LogFile) and determine if the volume has been | ||
| 880 | shutdown cleanly and force a read-only mount if not (fs/ntfs/super.c | ||
| 881 | and fs/ntfs/logfile.c). This is a little bit of a crude check in | ||
| 882 | that we only look at the restart areas and not at the actual log | ||
| 883 | records so that there will be a very small number of cases where we | ||
| 884 | think that a volume is dirty when in fact it is clean. This should | ||
| 885 | only affect volumes that have not been shutdown cleanly and did not | ||
| 886 | have any pending, non-check-pointed i/o. | ||
| 887 | - If the $LogFile indicates a clean shutdown and a read-write (re)mount | ||
| 888 | is requested, empty $LogFile by overwriting it with 0xff bytes to | ||
| 889 | ensure that Windows cannot cause data corruption by replaying a stale | ||
| 890 | journal after Linux has written to the volume. | ||
| 891 | |||
| 892 | 2.1.7 - Enable NFS exporting of mounted NTFS volumes. | ||
| 893 | |||
| 894 | - Set i_generation in the VFS inode from the seq_no of the NTFS inode. | ||
| 895 | - Make ntfs_lookup() NFS export safe, i.e. use d_splice_alias(), etc. | ||
| 896 | - Implement ->get_dentry() in fs/ntfs/namei.c::ntfs_get_dentry() as the | ||
| 897 | default doesn't allow inode number 0 which is a valid inode on NTFS | ||
| 898 | and even if it did allow that it uses iget() instead of ntfs_iget() | ||
| 899 | which makes it useless for us. | ||
| 900 | - Implement ->get_parent() in fs/ntfs/namei.c::ntfs_get_parent() as the | ||
| 901 | default just returns -EACCES which is not very useful. | ||
| 902 | - Define export operations (->s_export_op) for NTFS (ntfs_export_ops) | ||
| 903 | and set them up in the super block at mount time (super.c) this | ||
| 904 | allows mounted NTFS volumes to be exported via NFS. | ||
| 905 | - Add missing return -EOPNOTSUPP; in | ||
| 906 | fs/ntfs/aops.c::ntfs_commit_nonresident_write(). | ||
| 907 | - Enforce no atime and no dir atime updates at mount/remount time as | ||
| 908 | they are not implemented yet anyway. | ||
| 909 | - Move a few assignments in fs/ntfs/attrib.c::load_attribute_list() to | ||
| 910 | after a NULL check. Thanks to Dave Jones for pointing this out. | ||
| 911 | |||
| 912 | 2.1.6 - Fix minor bug in handling of compressed directories. | ||
| 913 | |||
| 914 | - Fix bug in handling of compressed directories. A compressed | ||
| 915 | directory is not really compressed so when we set the ->i_blocks | ||
| 916 | field of a compressed directory inode we were setting it from the | ||
| 917 | non-existing field ni->itype.compressed.size which gave random | ||
| 918 | results... For directories we now always use ni->allocated_size. | ||
| 919 | |||
| 920 | 2.1.5 - Fix minor bug in attribute list attribute handling. | ||
| 921 | |||
| 922 | - Fix bug in attribute list handling. Actually it is not as much a bug | ||
| 923 | as too much protection in that we were not allowing attribute lists | ||
| 924 | which waste space on disk while Windows XP clearly allows it and in | ||
| 925 | fact creates such attribute lists so our driver was failing. | ||
| 926 | - Update NTFS documentation ready for 2.6 kernel release. | ||
| 927 | |||
| 928 | 2.1.4 - Reduce compiler requirements. | ||
| 929 | |||
| 930 | - Remove all uses of unnamed structs and unions in the driver to make | ||
| 931 | old and newer gcc versions happy. Makes it a bit uglier IMO but at | ||
| 932 | least people will stop hassling me about it. | ||
| 933 | |||
| 934 | 2.1.3 - Important bug fixes in corner cases. | ||
| 935 | |||
| 936 | - super.c::parse_ntfs_boot_sector(): Correct the check for 64-bit | ||
| 937 | clusters. (Philipp Thomas) | ||
| 938 | - attrib.c::load_attribute_list(): Fix bug when initialized_size is a | ||
| 939 | multiple of the block_size but not the cluster size. (Szabolcs | ||
| 940 | Szakacsits) | ||
| 941 | |||
| 942 | 2.1.2 - Important bug fixes aleviating the hangs in statfs. | ||
| 943 | |||
| 944 | - Fix buggy free cluster and free inode determination logic. | ||
| 945 | |||
| 946 | 2.1.1 - Minor updates. | ||
| 947 | |||
| 948 | - Add handling for initialized_size != data_size in compressed files. | ||
| 949 | - Reduce function local stack usage from 0x3d4 bytes to just noise in | ||
| 950 | fs/ntfs/upcase.c. (Randy Dunlap) | ||
| 951 | - Remove compiler warnings for newer gcc. | ||
| 952 | - Pages are no longer kmapped by mm/filemap.c::generic_file_write() | ||
| 953 | around calls to ->{prepare,commit}_write. Adapt NTFS appropriately | ||
| 954 | in fs/ntfs/aops.c::ntfs_prepare_nonresident_write() by using | ||
| 955 | kmap_atomic(KM_USER0). | ||
| 956 | |||
| 957 | 2.1.0 - First steps towards write support: implement file overwrite. | ||
| 958 | |||
| 959 | - Add configuration option for developmental write support with an | ||
| 960 | appropriately scary configuration help text. | ||
| 961 | - Initial implementation of fs/ntfs/aops.c::ntfs_writepage() and its | ||
| 962 | helper fs/ntfs/aops.c::ntfs_write_block(). This enables mmap(2) based | ||
| 963 | overwriting of existing files on ntfs. Note: Resident files are | ||
| 964 | only written into memory, and not written out to disk at present, so | ||
| 965 | avoid writing to files smaller than about 1kiB. | ||
| 966 | - Initial implementation of fs/ntfs/aops.c::ntfs_prepare_write(), its | ||
| 967 | helper fs/ntfs/aops.c::ntfs_prepare_nonresident_write() and their | ||
| 968 | counterparts, fs/ntfs/aops.c::ntfs_commit_write(), and | ||
| 969 | fs/ntfs/aops.c::ntfs_commit_nonresident_write(), respectively. Also, | ||
| 970 | add generic_file_write() to the ntfs file operations (fs/ntfs/file.c). | ||
| 971 | This enables write(2) based overwriting of existing files on ntfs. | ||
| 972 | Note: As with mmap(2) based overwriting, resident files are only | ||
| 973 | written into memory, and not written out to disk at present, so avoid | ||
| 974 | writing to files smaller than about 1kiB. | ||
| 975 | - Implement ->truncate (fs/ntfs/inode.c::ntfs_truncate()) and | ||
| 976 | ->setattr() (fs/ntfs/inode.c::ntfs_setattr()) inode operations for | ||
| 977 | files with the purpose of intercepting and aborting all i_size | ||
| 978 | changes which we do not support yet. ntfs_truncate() actually only | ||
| 979 | emits a warning message but AFAICS our interception of i_size changes | ||
| 980 | elsewhere means ntfs_truncate() never gets called for i_size changes. | ||
| 981 | It is only called from generic_file_write() when we fail in | ||
| 982 | ntfs_prepare_{,nonresident_}write() in order to discard any | ||
| 983 | instantiated buffers beyond i_size. Thus i_size is not actually | ||
| 984 | changed so our warning message is enough. Unfortunately it is not | ||
| 985 | possible to easily determine if i_size is being changed or not hence | ||
| 986 | we just emit an appropriately worded error message. | ||
| 987 | |||
| 988 | 2.0.25 - Small bug fixes and cleanups. | ||
| 989 | |||
| 990 | - Unlock the page in an out of memory error code path in | ||
| 991 | fs/ntfs/aops.c::ntfs_read_block(). | ||
| 992 | - If fs/ntfs/aops.c::ntfs_read_page() is called on an uptodate page, | ||
| 993 | just unlock the page and return. (This can happen due to ->writepage | ||
| 994 | clearing PageUptodate() during write out of MstProtected() | ||
| 995 | attributes. | ||
| 996 | - Remove leaked write code again. | ||
| 997 | |||
| 998 | 2.0.24 - Cleanups. | ||
| 999 | |||
| 1000 | - Treat BUG_ON() as ASSERT() not VERIFY(), i.e. do not use side effects | ||
| 1001 | inside BUG_ON(). (Adam J. Richter) | ||
| 1002 | - Split logical OR expressions inside BUG_ON() into individual BUG_ON() | ||
| 1003 | calls for improved debugging. (Adam J. Richter) | ||
| 1004 | - Add errors flag to the ntfs volume state, accessed via | ||
| 1005 | NVol{,Set,Clear}Errors(vol). | ||
| 1006 | - Do not allow read-write remounts of read-only volumes with errors. | ||
| 1007 | - Clarify comment for ntfs file operation sendfile which was added by | ||
| 1008 | Christoph Hellwig a while ago (just using generic_file_sendfile()) | ||
| 1009 | to say that ntfs ->sendfile is only used for the case where the | ||
| 1010 | source data is on the ntfs partition and the destination is | ||
| 1011 | somewhere else, i.e. nothing we need to concern ourselves with. | ||
| 1012 | - Add generic_file_write() as our ntfs file write operation. | ||
| 1013 | |||
| 1014 | 2.0.23 - Major bug fixes (races, deadlocks, non-i386 architectures). | ||
| 1015 | |||
| 1016 | - Massive internal locking changes to mft record locking. Fixes lock | ||
| 1017 | recursion and replaces the mrec_lock read/write semaphore with a | ||
| 1018 | mutex. Also removes the now superfluous mft_count. This fixes several | ||
| 1019 | race conditions and deadlocks, especially in the future write code. | ||
| 1020 | - Fix ntfs over loopback for compressed files by adding an | ||
| 1021 | optimization barrier. (gcc was screwing up otherwise ?) | ||
| 1022 | - Miscellaneous cleanups all over the code and a fix or two in error | ||
| 1023 | handling code paths. | ||
| 1024 | Thanks go to Christoph Hellwig for pointing out the following two: | ||
| 1025 | - Remove now unused function fs/ntfs/malloc.h::vmalloc_nofs(). | ||
| 1026 | - Fix ntfs_free() for ia64 and parisc by checking for VMALLOC_END, too. | ||
| 1027 | |||
| 1028 | 2.0.22 - Cleanups, mainly to ntfs_readdir(), and use C99 initializers. | ||
| 1029 | |||
| 1030 | - Change fs/ntfs/dir.c::ntfs_reddir() to only read/write ->f_pos once | ||
| 1031 | at entry/exit respectively. | ||
| 1032 | - Use C99 initializers for structures. | ||
| 1033 | - Remove unused variable blocks from fs/ntfs/aops.c::ntfs_read_block(). | ||
| 1034 | |||
| 1035 | 2.0.21 - Check for, and refuse to work with too large files/directories/volumes. | ||
| 1036 | |||
| 1037 | - Limit volume size at mount time to 2TiB on architectures where | ||
| 1038 | unsigned long is 32-bits (fs/ntfs/super.c::parse_ntfs_boot_sector()). | ||
| 1039 | This is the most we can do without overflowing the 32-bit limit of | ||
| 1040 | the block device size imposed on us by sb_bread() and sb_getblk() | ||
| 1041 | for the time being. | ||
| 1042 | - Limit file/directory size at open() time to 16TiB on architectures | ||
| 1043 | where unsigned long is 32-bits (fs/ntfs/file.c::ntfs_file_open() and | ||
| 1044 | fs/ntfs/dir.c::ntfs_dir_open()). This is the most we can do without | ||
| 1045 | overflowing the page cache page index. | ||
| 1046 | |||
| 1047 | 2.0.20 - Support non-resident directory index bitmaps, fix page leak in readdir. | ||
| 1048 | |||
| 1049 | - Move the directory index bitmap to use an attribute inode instead of | ||
| 1050 | having special fields for it inside the ntfs inode structure. This | ||
| 1051 | means that the index bitmaps now use the page cache for i/o, too, | ||
| 1052 | and also as a side effect we get support for non-resident index | ||
| 1053 | bitmaps for free. | ||
| 1054 | - Simplify/cleanup error handling in fs/ntfs/dir.c::ntfs_readdir() and | ||
| 1055 | fix a page leak that manifested itself in some cases. | ||
| 1056 | - Add fs/ntfs/inode.c::ntfs_put_inode(), which we need to release the | ||
| 1057 | index bitmap inode on the final iput(). | ||
| 1058 | |||
| 1059 | 2.0.19 - Fix race condition, improvements, and optimizations in i/o interface. | ||
| 1060 | |||
| 1061 | - Apply block optimization added to fs/ntfs/aops.c::ntfs_read_block() | ||
| 1062 | to fs/ntfs/compress.c::ntfs_file_read_compressed_block() as well. | ||
| 1063 | - Drop the "file" from ntfs_file_read_compressed_block(). | ||
| 1064 | - Rename fs/ntfs/aops.c::ntfs_enb_buffer_read_async() to | ||
| 1065 | ntfs_end_buffer_async_read() (more like the fs/buffer.c counterpart). | ||
| 1066 | - Update ntfs_end_buffer_async_read() with the improved logic from | ||
| 1067 | its updated counterpart fs/buffer.c::end_buffer_async_read(). Apply | ||
| 1068 | further logic improvements to better determine when we set PageError. | ||
| 1069 | - Update submission of buffers in fs/ntfs/aops.c::ntfs_read_block() to | ||
| 1070 | check for the buffers being uptodate first in line with the updated | ||
| 1071 | fs/buffer.c::block_read_full_page(). This plugs a small race | ||
| 1072 | condition. | ||
| 1073 | |||
| 1074 | 2.0.18 - Fix race condition in reading of compressed files. | ||
| 1075 | |||
| 1076 | - There was a narrow window between checking a buffer head for being | ||
| 1077 | uptodate and locking it in ntfs_file_read_compressed_block(). We now | ||
| 1078 | lock the buffer and then check whether it is uptodate or not. | ||
| 1079 | |||
| 1080 | 2.0.17 - Cleanups and optimizations - shrinking the ToDo list. | ||
| 1081 | |||
| 1082 | - Modify fs/ntfs/inode.c::ntfs_read_locked_inode() to return an error | ||
| 1083 | code and update callers, i.e. ntfs_iget(), to pass that error code | ||
| 1084 | up instead of just using -EIO. | ||
| 1085 | - Modifications to super.c to ensure that both mount and remount | ||
| 1086 | cannot set any write related options when the driver is compiled | ||
| 1087 | read-only. | ||
| 1088 | - Optimize block resolution in fs/ntfs/aops.c::ntfs_read_block() to | ||
| 1089 | cache the current runlist element. This should improve performance | ||
| 1090 | when reading very large and/or very fragmented data. | ||
| 1091 | |||
| 1092 | 2.0.16 - Convert access to $MFT/$BITMAP to attribute inode API. | ||
| 1093 | |||
| 1094 | - Fix a stupid bug introduced in 2.0.15 where we were unmapping the | ||
| 1095 | wrong inode in fs/ntfs/inode.c::ntfs_attr_iget(). | ||
| 1096 | - Fix debugging check in fs/ntfs/aops.c::ntfs_read_block(). | ||
| 1097 | - Convert $MFT/$BITMAP access to attribute inode API and remove all | ||
| 1098 | remnants of the ugly mftbmp address space and operations hack. This | ||
| 1099 | means we finally have only one readpage function as well as only one | ||
| 1100 | async io completion handler. Yey! The mft bitmap is now just an | ||
| 1101 | attribute inode and is accessed from vol->mftbmp_ino just as if it | ||
| 1102 | were a normal file. Fake inodes rule. (-: | ||
| 1103 | |||
| 1104 | 2.0.15 - Fake inodes based attribute i/o via the pagecache, fixes and cleanups. | ||
| 1105 | |||
| 1106 | - Fix silly bug in fs/ntfs/super.c::parse_options() which was causing | ||
| 1107 | remounts to fail when the partition had an entry in /etc/fstab and | ||
| 1108 | the entry specified the nls= option. | ||
| 1109 | - Apply same macro magic used in fs/ntfs/inode.h to fs/ntfs/volume.h to | ||
| 1110 | expand all the helper functions NVolFoo(), NVolSetFoo(), and | ||
| 1111 | NVolClearFoo(). | ||
| 1112 | - Move copyright statement from driver initialisation message to | ||
| 1113 | module description (fs/super.c). This makes the initialisation | ||
| 1114 | message fit on one line and fits in better with rest of kernel. | ||
| 1115 | - Update fs/ntfs/attrib.c::map_run_list() to work on both real and | ||
| 1116 | attribute inodes, and both for files and directories. | ||
| 1117 | - Implement fake attribute inodes allowing all attribute i/o to go via | ||
| 1118 | the page cache and to use all the normal vfs/mm functionality: | ||
| 1119 | - Add ntfs_attr_iget() and its helper ntfs_read_locked_attr_inode() | ||
| 1120 | to fs/ntfs/inode.c. | ||
| 1121 | - Add needed cleanup code to ntfs_clear_big_inode(). | ||
| 1122 | - Merge address space operations for files and directories (aops.c), | ||
| 1123 | now just have ntfs_aops: | ||
| 1124 | - Rename: | ||
| 1125 | end_buffer_read_attr_async() -> ntfs_end_buffer_read_async(), | ||
| 1126 | ntfs_attr_read_block() -> ntfs_read_block(), | ||
| 1127 | ntfs_file_read_page() -> ntfs_readpage(). | ||
| 1128 | - Rewrite fs/ntfs/aops.c::ntfs_readpage() to work on both real and | ||
| 1129 | attribute inodes, and both for files and directories. | ||
| 1130 | - Remove obsolete fs/ntfs/aops.c::ntfs_mst_readpage(). | ||
| 1131 | |||
| 1132 | 2.0.14 - Run list merging code cleanup, minor locking changes, typo fixes. | ||
| 1133 | |||
| 1134 | - Change fs/ntfs/super.c::ntfs_statfs() to not rely on BKL by moving | ||
| 1135 | the locking out of super.c::get_nr_free_mft_records() and taking and | ||
| 1136 | dropping the mftbmp_lock rw_semaphore in ntfs_statfs() itself. | ||
| 1137 | - Bring attribute runlist merging code (fs/ntfs/attrib.c) in sync with | ||
| 1138 | current userspace ntfs library code. This means that if a merge | ||
| 1139 | fails the original runlists are always left unmodified instead of | ||
| 1140 | being silently corrupted. | ||
| 1141 | - Misc typo fixes. | ||
| 1142 | |||
| 1143 | 2.0.13 - Use iget5_locked() in preparation for fake inodes and small cleanups. | ||
| 1144 | |||
| 1145 | - Remove nr_mft_bits and the now superfluous union with nr_mft_records | ||
| 1146 | from ntfs_volume structure. | ||
| 1147 | - Remove nr_lcn_bits and the now superfluous union with nr_clusters | ||
| 1148 | from ntfs_volume structure. | ||
| 1149 | - Use iget5_locked() and friends instead of conventional iget(). Wrap | ||
| 1150 | the call in fs/ntfs/inode.c::ntfs_iget() and update callers of iget() | ||
| 1151 | to use ntfs_iget(). Leave only one iget() call at mount time so we | ||
| 1152 | don't need an ntfs_iget_mount(). | ||
| 1153 | - Change fs/ntfs/inode.c::ntfs_new_extent_inode() to take mft_no as an | ||
| 1154 | additional argument. | ||
| 1155 | |||
| 1156 | 2.0.12 - Initial cleanup of address space operations following 2.0.11 changes. | ||
| 1157 | |||
| 1158 | - Merge fs/ntfs/aops.c::end_buffer_read_mst_async() and | ||
| 1159 | fs/ntfs/aops.c::end_buffer_read_file_async() into one function | ||
| 1160 | fs/ntfs/aops.c::end_buffer_read_attr_async() using NInoMstProtected() | ||
| 1161 | to determine whether to apply mst fixups or not. | ||
| 1162 | - Above change allows merging fs/ntfs/aops.c::ntfs_file_read_block() | ||
| 1163 | and fs/ntfs/aops.c::ntfs_mst_readpage() into one function | ||
| 1164 | fs/ntfs/aops.c::ntfs_attr_read_block(). Also, create a tiny wrapper | ||
| 1165 | fs/ntfs/aops.c::ntfs_mst_readpage() to transform the parameters from | ||
| 1166 | the VFS readpage function prototype to the ntfs_attr_read_block() | ||
| 1167 | function prototype. | ||
| 1168 | |||
| 1169 | 2.0.11 - Initial preparations for fake inode based attribute i/o. | ||
| 1170 | |||
| 1171 | - Move definition of ntfs_inode_state_bits to fs/ntfs/inode.h and | ||
| 1172 | do some macro magic (adapted from include/linux/buffer_head.h) to | ||
| 1173 | expand all the helper functions NInoFoo(), NInoSetFoo(), and | ||
| 1174 | NInoClearFoo(). | ||
| 1175 | - Add new flag to ntfs_inode_state_bits: NI_Sparse. | ||
| 1176 | - Add new fields to ntfs_inode structure to allow use of fake inodes | ||
| 1177 | for attribute i/o: type, name, name_len. Also add new state bits: | ||
| 1178 | NI_Attr, which, if set, indicates the inode is a fake inode, and | ||
| 1179 | NI_MstProtected, which, if set, indicates the attribute uses multi | ||
| 1180 | sector transfer protection, i.e. fixups need to be applied after | ||
| 1181 | reads and before/after writes. | ||
| 1182 | - Rename fs/ntfs/inode.c::ntfs_{new,clear,destroy}_inode() to | ||
| 1183 | ntfs_{new,clear,destroy}_extent_inode() and update callers. | ||
| 1184 | - Use ntfs_clear_extent_inode() in fs/ntfs/inode.c::__ntfs_clear_inode() | ||
| 1185 | instead of ntfs_destroy_extent_inode(). | ||
| 1186 | - Cleanup memory deallocations in {__,}ntfs_clear_{,big_}inode(). | ||
| 1187 | - Make all operations on ntfs inode state bits use the NIno* functions. | ||
| 1188 | - Set up the new ntfs inode fields and state bits in | ||
| 1189 | fs/ntfs/inode.c::ntfs_read_inode() and add appropriate cleanup of | ||
| 1190 | allocated memory to __ntfs_clear_inode(). | ||
| 1191 | - Cleanup ntfs_inode structure a bit for better ordering of elements | ||
| 1192 | w.r.t. their size to allow better packing of the structure in memory. | ||
| 1193 | |||
| 1194 | 2.0.10 - There can only be 2^32 - 1 inodes on an NTFS volume. | ||
| 1195 | |||
| 1196 | - Add check at mount time to verify that the number of inodes on the | ||
| 1197 | volume does not exceed 2^32 - 1, which is the maximum allowed for | ||
| 1198 | NTFS according to Microsoft. | ||
| 1199 | - Change mft_no member of ntfs_inode structure to be unsigned long. | ||
| 1200 | Update all users. This makes ntfs_inode->mft_no just a copy of struct | ||
| 1201 | inode->i_ino. But we can't just always use struct inode->i_ino and | ||
| 1202 | remove mft_no because extent inodes do not have an attached struct | ||
| 1203 | inode. | ||
| 1204 | |||
| 1205 | 2.0.9 - Decompression engine now uses a single buffer and other cleanups. | ||
| 1206 | |||
| 1207 | - Change decompression engine to use a single buffer protected by a | ||
| 1208 | spin lock instead of per-CPU buffers. (Rusty Russell) | ||
| 1209 | - Do not update cb_pos when handling a partial final page during | ||
| 1210 | decompression of a sparse compression block, as the value is later | ||
| 1211 | reset without being read/used. (Rusty Russell) | ||
| 1212 | - Switch to using the new KM_BIO_SRC_IRQ for atomic kmap()s. (Andrew | ||
| 1213 | Morton) | ||
| 1214 | - Change buffer size in ntfs_readdir()/ntfs_filldir() to use | ||
| 1215 | NLS_MAX_CHARSET_SIZE which makes the buffers almost 1kiB each but | ||
| 1216 | it also makes everything safer so it is a good thing. | ||
| 1217 | - Miscellaneous minor cleanups to comments. | ||
| 1218 | |||
| 1219 | 2.0.8 - Major updates for handling of case sensitivity and dcache aliasing. | ||
| 1220 | |||
| 1221 | Big thanks go to Al Viro and other inhabitants of #kernel for investing | ||
| 1222 | their time to discuss the case sensitivity and dcache aliasing issues. | ||
| 1223 | |||
| 1224 | - Remove unused source file fs/ntfs/attraops.c. | ||
| 1225 | - Remove show_inodes mount option(s), thus dropping support for | ||
| 1226 | displaying of short file names. | ||
| 1227 | - Remove deprecated mount option posix. | ||
| 1228 | - Restore show_sys_files mount option. | ||
| 1229 | - Add new mount option case_sensitive, to determine if the driver | ||
| 1230 | treats file names as case sensitive or not. If case sensitive, create | ||
| 1231 | file names in the POSIX namespace. Otherwise create file names in the | ||
| 1232 | LONG/WIN32 namespace. Note, files remain accessible via their short | ||
| 1233 | file name, if it exists. | ||
| 1234 | - Remove really dumb logic bug in boot sector recovery code. | ||
| 1235 | - Fix dcache aliasing issues wrt short/long file names via changes | ||
| 1236 | to fs/ntfs/dir.c::ntfs_lookup_inode_by_name() and | ||
| 1237 | fs/ntfs/namei.c::ntfs_lookup(): | ||
| 1238 | - Add additional argument to ntfs_lookup_inode_by_name() in which we | ||
| 1239 | return information about the matching file name if the case is not | ||
| 1240 | matching or the match is a short file name. See comments above the | ||
| 1241 | function definition for details. | ||
| 1242 | - Change ntfs_lookup() to only create dcache entries for the correctly | ||
| 1243 | cased file name and only for the WIN32 namespace counterpart of DOS | ||
| 1244 | namespace file names. This ensures we have only one dentry per | ||
| 1245 | directory and also removes all dcache aliasing issues between short | ||
| 1246 | and long file names once we add write support. See comments above | ||
| 1247 | function for details. | ||
| 1248 | - Fix potential 1 byte overflow in fs/ntfs/unistr.c::ntfs_ucstonls(). | ||
| 1249 | |||
| 1250 | 2.0.7 - Minor cleanups and updates for changes in core kernel code. | ||
| 1251 | |||
| 1252 | - Remove much of the NULL struct element initializers. | ||
| 1253 | - Various updates to make compatible with recent kernels. | ||
| 1254 | - Remove defines of MAX_BUF_PER_PAGE and include linux/buffer_head.h | ||
| 1255 | in fs/ntfs/ntfs.h instead. | ||
| 1256 | - Remove no longer needed KERNEL_VERSION checks. We are now in the | ||
| 1257 | kernel proper so they are no longer needed. | ||
| 1258 | |||
| 1259 | 2.0.6 - Major bugfix to make compatible with other kernel changes. | ||
| 1260 | |||
| 1261 | - Initialize the mftbmp address space properly now that there are more | ||
| 1262 | fields in the struct address_space. This was leading to hangs and | ||
| 1263 | oopses on umount since 2.5.12 because of changes to other parts of | ||
| 1264 | the kernel. We probably want a kernel generic init_address_space() | ||
| 1265 | function... | ||
| 1266 | - Drop BKL from ntfs_readdir() after consultation with Al Viro. The | ||
| 1267 | only caller of ->readdir() is vfs_readdir() which holds i_mutex | ||
| 1268 | during the call, and i_mutex is sufficient protection against changes | ||
| 1269 | in the directory inode (including ->i_size). | ||
| 1270 | - Use generic_file_llseek() for directories (as opposed to | ||
| 1271 | default_llseek()) as this downs i_mutex instead of the BKL which is | ||
| 1272 | what we now need for exclusion against ->f_pos changes considering we | ||
| 1273 | no longer take the BKL in ntfs_readdir(). | ||
| 1274 | |||
| 1275 | 2.0.5 - Major bugfix. Buffer overflow in extent inode handling. | ||
| 1276 | |||
| 1277 | - No need to set old blocksize in super.c::ntfs_fill_super() as the | ||
| 1278 | VFS does so via invocation of deactivate_super() calling | ||
| 1279 | fs->fill_super() calling block_kill_super() which does it. | ||
| 1280 | - BKL moved from VFS into dir.c::ntfs_readdir(). (Linus Torvalds) | ||
| 1281 | -> Do we really need it? I don't think so as we have exclusion on | ||
| 1282 | the directory ntfs_inode rw_semaphore mrec_lock. We mmight have to | ||
| 1283 | move the ->f_pos accesses under the mrec_lock though. Check this... | ||
| 1284 | - Fix really, really, really stupid buffer overflow in extent inode | ||
| 1285 | handling in mft.c::map_extent_mft_record(). | ||
| 1286 | |||
| 1287 | 2.0.4 - Cleanups and updates for kernel 2.5.11. | ||
| 1288 | |||
| 1289 | - Add documentation on how to use the MD driver to be able to use NTFS | ||
| 1290 | stripe and volume sets in Linux and generally cleanup documentation | ||
| 1291 | a bit. | ||
| 1292 | Remove all uses of kdev_t in favour of struct block_device *: | ||
| 1293 | - Change compress.c::ntfs_file_read_compressed_block() to use | ||
| 1294 | sb_getblk() instead of getblk(). | ||
| 1295 | - Change super.c::ntfs_fill_super() to use bdev_hardsect_size() instead | ||
| 1296 | of get_hardsect_size(). | ||
| 1297 | - No need to get old blocksize in super.c::ntfs_fill_super() as | ||
| 1298 | fs/super.c::get_sb_bdev() already does this. | ||
| 1299 | - Set bh->b_bdev instead of bh->b_dev throughout aops.c. | ||
| 1300 | |||
| 1301 | 2.0.3 - Small bug fixes, cleanups, and performance improvements. | ||
| 1302 | |||
| 1303 | - Remove some dead code from mft.c. | ||
| 1304 | - Optimize readpage and read_block functions throughout aops.c so that | ||
| 1305 | only initialized blocks are read. Non-initialized ones have their | ||
| 1306 | buffer head mapped, zeroed, and set up to date, without scheduling | ||
| 1307 | any i/o. Thanks to Al Viro for advice on how to avoid the device i/o. | ||
| 1308 | Thanks go to Andrew Morton for spotting the below: | ||
| 1309 | - Fix buglet in allocate_compression_buffers() error code path. | ||
| 1310 | - Call flush_dcache_page() after modifying page cache page contents in | ||
| 1311 | ntfs_file_readpage(). | ||
| 1312 | - Check for existence of page buffers throughout aops.c before calling | ||
| 1313 | create_empty_buffers(). This happens when an I/O error occurs and the | ||
| 1314 | read is retried. (It also happens once writing is implemented so that | ||
| 1315 | needed doing anyway but I had left it for later...) | ||
| 1316 | - Don't BUG_ON() uptodate and/or mapped buffers throughout aops.c in | ||
| 1317 | readpage and read_block functions. Reasoning same as above (i.e. I/O | ||
| 1318 | error retries and future write code paths.) | ||
| 1319 | |||
| 1320 | 2.0.2 - Minor updates and cleanups. | ||
| 1321 | |||
| 1322 | - Cleanup: rename mst.c::__post_read_mst_fixup to post_write_mst_fixup | ||
| 1323 | and cleanup the code a bit, removing the unused size parameter. | ||
| 1324 | - Change default fmask to 0177 and update documentation. | ||
| 1325 | - Change attrib.c::get_attr_search_ctx() to return the search context | ||
| 1326 | directly instead of taking the address of a pointer. A return value | ||
| 1327 | of NULL means the allocation failed. Updated all callers | ||
| 1328 | appropriately. | ||
| 1329 | - Update to 2.5.9 kernel (preserving backwards compatibility) by | ||
| 1330 | replacing all occurences of page->buffers with page_buffers(page). | ||
| 1331 | - Fix minor bugs in runlist merging, also minor cleanup. | ||
| 1332 | - Updates to bootsector layout and mft mirror contents descriptions. | ||
| 1333 | - Small bug fix in error detection in unistr.c and some cleanups. | ||
| 1334 | - Grow name buffer allocations in unistr.c in aligned mutlipled of 64 | ||
| 1335 | bytes. | ||
| 1336 | |||
| 1337 | 2.0.1 - Minor updates. | ||
| 1338 | |||
| 1339 | - Make default umask correspond to documentation. | ||
| 1340 | - Improve documentation. | ||
| 1341 | - Set default mode to include execute bit. The {u,f,d}mask can be used | ||
| 1342 | to take it away if desired. This allows binaries to be executed from | ||
| 1343 | a mounted ntfs partition. | ||
| 1344 | |||
| 1345 | 2.0.0 - New version number. Remove TNG from the name. Now in the kernel. | ||
| 1346 | |||
| 1347 | - Add kill_super, just keeping up with the vfs changes in the kernel. | ||
| 1348 | - Repeat some changes from tng-0.0.8 that somehow got lost on the way | ||
| 1349 | from the CVS import into BitKeeper. | ||
| 1350 | - Begin to implement proper handling of allocated_size vs | ||
| 1351 | initialized_size vs data_size (i.e. i_size). Done are | ||
| 1352 | mft.c::ntfs_mft_readpage(), aops.c::end_buffer_read_index_async(), | ||
| 1353 | and attrib.c::load_attribute_list(). | ||
| 1354 | - Lock the runlist in attrib.c::load_attribute_list() while using it. | ||
| 1355 | - Fix memory leak in ntfs_file_read_compressed_block() and generally | ||
| 1356 | clean up compress.c a little, removing some uncommented/unused debug | ||
| 1357 | code. | ||
| 1358 | - Tidy up dir.c a little bit. | ||
| 1359 | - Don't bother getting the runlist in inode.c::ntfs_read_inode(). | ||
| 1360 | - Merge mft.c::ntfs_mft_readpage() and aops.c::ntfs_index_readpage() | ||
| 1361 | creating aops.c::ntfs_mst_readpage(), improving the handling of | ||
| 1362 | holes and overflow in the process and implementing the correct | ||
| 1363 | equivalent of ntfs_file_get_block() in ntfs_mst_readpage() itself. | ||
| 1364 | I am aiming for correctness at the moment. Modularisation can come | ||
| 1365 | later. | ||
| 1366 | - Rename aops.c::end_buffer_read_index_async() to | ||
| 1367 | end_buffer_read_mst_async() and optimize the overflow checking and | ||
| 1368 | handling. | ||
| 1369 | - Use the host of the mftbmp address space mapping to hold the ntfs | ||
| 1370 | volume. This is needed so the async i/o completion handler can | ||
| 1371 | retrieve a pointer to the volume. Hopefully this will not cause | ||
| 1372 | problems elsewhere in the kernel... Otherwise will need to use a | ||
| 1373 | fake inode. | ||
| 1374 | - Complete implementation of proper handling of allocated_size vs | ||
| 1375 | initialized_size vs data_size (i.e. i_size) in whole driver. | ||
| 1376 | Basically aops.c is now completely rewritten. | ||
| 1377 | - Change NTFS driver name to just NTFS and set version number to 2.0.0 | ||
| 1378 | to make a clear distinction from the old driver which is still on | ||
| 1379 | version 1.1.22. | ||
| 1380 | |||
| 1381 | tng-0.0.8 - 08/03/2002 - Now using BitKeeper, http://linux-ntfs.bkbits.net/ | ||
| 1382 | |||
| 1383 | - Replace bdevname(sb->s_dev) with sb->s_id. | ||
| 1384 | - Remove now superfluous new-line characters in all callers of | ||
| 1385 | ntfs_debug(). | ||
| 1386 | - Apply kludge in ntfs_read_inode(), setting i_nlink to 1 for | ||
| 1387 | directories. Without this the "find" utility gets very upset which is | ||
| 1388 | fair enough as Linux/Unix do not support directory hard links. | ||
| 1389 | - Further runlist merging work. (Richard Russon) | ||
| 1390 | - Backwards compatibility for gcc-2.95. (Richard Russon) | ||
| 1391 | - Update to kernel 2.5.5-pre1 and rediff the now tiny patch. | ||
| 1392 | - Convert to new filesystem declaration using ->ntfs_get_sb() and | ||
| 1393 | replacing ntfs_read_super() with ntfs_fill_super(). | ||
| 1394 | - Set s_maxbytes to MAX_LFS_FILESIZE to avoid page cache page index | ||
| 1395 | overflow on 32-bit architectures. | ||
| 1396 | - Cleanup upcase loading code to use ntfs_(un)map_page(). | ||
| 1397 | - Disable/reenable preemtion in critical sections of compession engine. | ||
| 1398 | - Replace device size determination in ntfs_fill_super() with | ||
| 1399 | sb->s_bdev->bd_inode->i_size (in bytes) and remove now superfluous | ||
| 1400 | function super.c::get_nr_blocks(). | ||
| 1401 | - Implement a mount time option (show_inodes) allowing choice of which | ||
| 1402 | types of inode names readdir() returns and modify ntfs_filldir() | ||
| 1403 | accordingly. There are several parameters to show_inodes: | ||
| 1404 | system: system files | ||
| 1405 | win32: long file names (including POSIX file names) [DEFAULT] | ||
| 1406 | long: same as win32 | ||
| 1407 | dos: short file names only (excluding POSIX file names) | ||
| 1408 | short: same as dos | ||
| 1409 | posix: same as both win32 and dos | ||
| 1410 | all: all file names | ||
| 1411 | Note that the options are additive, i.e. specifying: | ||
| 1412 | -o show_inodes=system,show_inodes=win32,show_inodes=dos | ||
| 1413 | is the same as specifying: | ||
| 1414 | -o show_inodes=all | ||
| 1415 | Note that the "posix" and "all" options will show all directory | ||
| 1416 | names, BUT the link count on each directory inode entry is set to 1, | ||
| 1417 | due to Linux not supporting directory hard links. This may well | ||
| 1418 | confuse some userspace applications, since the directory names will | ||
| 1419 | have the same inode numbers. Thus it is NOT advisable to use the | ||
| 1420 | "posix" or "all" options. We provide them only for completeness sake. | ||
| 1421 | - Add copies of allocated_size, initialized_size, and compressed_size to | ||
| 1422 | the ntfs inode structure and set them up in | ||
| 1423 | inode.c::ntfs_read_inode(). These reflect the unnamed data attribute | ||
| 1424 | for files and the index allocation attribute for directories. | ||
| 1425 | - Add copies of allocated_size and initialized_size to ntfs inode for | ||
| 1426 | $BITMAP attribute of large directories and set them up in | ||
| 1427 | inode.c::ntfs_read_inode(). | ||
| 1428 | - Add copies of allocated_size and initialized_size to ntfs volume for | ||
| 1429 | $BITMAP attribute of $MFT and set them up in | ||
| 1430 | super.c::load_system_files(). | ||
| 1431 | - Parse deprecated ntfs driver options (iocharset, show_sys_files, | ||
| 1432 | posix, and utf8) and tell user what the new options to use are. Note | ||
| 1433 | we still do support them but they will be removed with kernel 2.7.x. | ||
| 1434 | - Change all occurences of integer long long printf formatting to hex | ||
| 1435 | as printk() will not support long long integer format if/when the | ||
| 1436 | div64 patch goes into the kernel. | ||
| 1437 | - Make slab caches have stable names and change the names to what they | ||
| 1438 | were intended to be. These changes are required/made possible by the | ||
| 1439 | new slab cache name handling which removes the length limitation by | ||
| 1440 | requiring the caller of kmem_cache_create() to supply a stable name | ||
| 1441 | which is then referenced but not copied. | ||
| 1442 | - Rename run_list structure to run_list_element and create a new | ||
| 1443 | run_list structure containing a pointer to a run_list_element | ||
| 1444 | structure and a read/write semaphore. Adapt all users of runlists | ||
| 1445 | to new scheme and take and release the lock as needed. This fixes a | ||
| 1446 | nasty race as the run_list changes even when inodes are locked for | ||
| 1447 | reading and even when the inode isn't locked at all, so we really | ||
| 1448 | needed the serialization. We use a semaphore rather than a spinlock | ||
| 1449 | as memory allocations can sleep and doing everything GFP_ATOMIC | ||
| 1450 | would be silly. | ||
| 1451 | - Cleanup read_inode() removing all code checking for lowest_vcn != 0. | ||
| 1452 | This can never happen due to the nature of lookup_attr() and how we | ||
| 1453 | support attribute lists. If it did happen it would imply the inode | ||
| 1454 | being corrupt. | ||
| 1455 | - Check for lowest_vcn != 0 in ntfs_read_inode() and mark the inode as | ||
| 1456 | bad if found. | ||
| 1457 | - Update to 2.5.6-pre2 changes in struct address_space. | ||
| 1458 | - Use parent_ino() when accessing d_parent inode number in dir.c. | ||
| 1459 | - Import Sourceforge CVS repository into BitKeeper repository: | ||
| 1460 | http://linux-ntfs.bkbits.net/ntfs-tng-2.5 | ||
| 1461 | - Update fs/Makefile, fs/Config.help, fs/Config.in, and | ||
| 1462 | Documentation/filesystems/ntfs.txt for NTFS TNG. | ||
| 1463 | - Create kernel configuration option controlling whether debugging | ||
| 1464 | is enabled or not. | ||
| 1465 | - Add the required export of end_buffer_io_sync() from the patches | ||
| 1466 | directory to the kernel code. | ||
| 1467 | - Update inode.c::ntfs_show_options() with show_inodes mount option. | ||
| 1468 | - Update errors mount option. | ||
| 1469 | |||
| 1470 | tng-0.0.7 - 13/02/2002 - The driver is now feature complete for read-only! | ||
| 1471 | |||
| 1472 | - Cleanup mft.c and it's debug/error output in particular. Fix a minor | ||
| 1473 | bug in mapping of extent inodes. Update all the comments to fit all | ||
| 1474 | the recent code changes. | ||
| 1475 | - Modify vcn_to_lcn() to cope with entirely unmapped runlists. | ||
| 1476 | - Cleanups in compress.c, mostly comments and folding help. | ||
| 1477 | - Implement attrib.c::map_run_list() as a generic helper. | ||
| 1478 | - Make compress.c::ntfs_file_read_compressed_block() use map_run_list() | ||
| 1479 | thus making code shorter and enabling attribute list support. | ||
| 1480 | - Cleanup incorrect use of [su]64 with %L printf format specifier in | ||
| 1481 | all source files. Type casts to [unsigned] long long added to correct | ||
| 1482 | the mismatches (important for architectures which have long long not | ||
| 1483 | being 64 bits). | ||
| 1484 | - Merge async io completion handlers for directory indexes and $MFT | ||
| 1485 | data into one by setting the index_block_size{_bits} of the ntfs | ||
| 1486 | inode for $MFT to the mft_record_size{_bits} of the ntfs_volume. | ||
| 1487 | - Cleanup aops.c, update comments. | ||
| 1488 | - Make ntfs_file_get_block() use map_run_list() so all files now | ||
| 1489 | support attribute lists. | ||
| 1490 | - Make ntfs_dir_readpage() almost verbatim copy of | ||
| 1491 | block_read_full_page() by using ntfs_file_get_block() with only real | ||
| 1492 | difference being the use of our own async io completion handler | ||
| 1493 | rather than the default one, thus reducing the amount of code and | ||
| 1494 | automatically enabling attribute list support for directory indices. | ||
| 1495 | - Fix bug in load_attribute_list() - forgot to call brelse in error | ||
| 1496 | code path. | ||
| 1497 | - Change parameters to find_attr() and lookup_attr(). We no longer | ||
| 1498 | pass in the upcase table and its length. These can be gotten from | ||
| 1499 | ctx->ntfs_ino->vol->upcase{_len}. Update all callers. | ||
| 1500 | - Cleanups in attrib.c. | ||
| 1501 | - Implement merging of runlists, attrib.c::merge_run_lists() and its | ||
| 1502 | helpers. (Richard Russon) | ||
| 1503 | - Attribute lists part 2, attribute extents and multi part runlists: | ||
| 1504 | enable proper support for LCN_RL_NOT_MAPPED and automatic mapping of | ||
| 1505 | further runlist parts via attrib.c::map_run_list(). | ||
| 1506 | - Tiny endianness bug fix in decompress_mapping_pairs(). | ||
| 1507 | |||
| 1508 | tng-0.0.6 - Encrypted directories, bug fixes, cleanups, debugging enhancements. | ||
| 1509 | |||
| 1510 | - Enable encrypted directories. (Their index root is marked encrypted | ||
| 1511 | to indicate that new files in that directory should be created | ||
| 1512 | encrypted.) | ||
| 1513 | - Fix bug in NInoBmpNonResident() macro. (Cut and paste error.) | ||
| 1514 | - Enable $Extend system directory. Most (if not all) extended system | ||
| 1515 | files do not have unnamed data attributes so ntfs_read_inode() had to | ||
| 1516 | special case them but that is ok, as the special casing recovery | ||
| 1517 | happens inside an error code path so there is zero slow down in the | ||
| 1518 | normal fast path. The special casing is done by introducing a new | ||
| 1519 | function inode.c::ntfs_is_extended_system_file() which checks if any | ||
| 1520 | of the hard links in the inode point to $Extend as being their parent | ||
| 1521 | directory and if they do we assume this is an extended system file. | ||
| 1522 | - Create a sysctl/proc interface to allow {dis,en}abling of debug output | ||
| 1523 | when compiled with -DDEBUG. Default is debug messages to be disabled. | ||
| 1524 | To enable them, one writes a non-zero value to /proc/sys/fs/ntfs-debug | ||
| 1525 | (if /proc is enabled) or uses sysctl(2) to effect the same (if sysctl | ||
| 1526 | interface is enabled). Inspired by old ntfs driver. | ||
| 1527 | - Add debug_msgs insmod/kernel boot parameter to set whether debug | ||
| 1528 | messages are {dis,en}abled. This is useful to enable debug messages | ||
| 1529 | during ntfs initialization and is the only way to activate debugging | ||
| 1530 | when the sysctl interface is not enabled. | ||
| 1531 | - Cleanup debug output in various places. | ||
| 1532 | - Remove all dollar signs ($) from the source (except comments) to | ||
| 1533 | enable compilation on architectures whose gcc compiler does not | ||
| 1534 | support dollar signs in the names of variables/constants. Attribute | ||
| 1535 | types now start with AT_ instead of $ and $I30 is now just I30. | ||
| 1536 | - Cleanup ntfs_lookup() and add consistency check of sequence numbers. | ||
| 1537 | - Load complete runlist for $MFT/$BITMAP during mount and cleanup | ||
| 1538 | access functions. This means we now cope with $MFT/$BITMAP being | ||
| 1539 | spread accross several mft records. | ||
| 1540 | - Disable modification of mft_zone_multiplier on remount. We can always | ||
| 1541 | reenable this later on if we really want to, but we will need to make | ||
| 1542 | sure we readjust the mft_zone size / layout accordingly. | ||
| 1543 | |||
| 1544 | tng-0.0.5 - Modernize for 2.5.x and further in line-ing with Al Viro's comments. | ||
| 1545 | |||
| 1546 | - Use sb_set_blocksize() instead of set_blocksize() and verify the | ||
| 1547 | return value. | ||
| 1548 | - Use sb_bread() instead of bread() throughout. | ||
| 1549 | - Add index_vcn_size{_bits} to ntfs_inode structure to store the size | ||
| 1550 | of a directory index block vcn. Apply resulting simplifications in | ||
| 1551 | dir.c everywhere. | ||
| 1552 | - Fix a small bug somewhere (but forgot what it was). | ||
| 1553 | - Change ntfs_{debug,error,warning} to enable gcc to do type checking | ||
| 1554 | on the printf-format parameter list and fix bugs reported by gcc | ||
| 1555 | as a result. (Richard Russon) | ||
| 1556 | - Move inode allocation strategy to Al's new stuff but maintain the | ||
| 1557 | divorce of ntfs_inode from struct inode. To achieve this we have two | ||
| 1558 | separate slab caches, one for big ntfs inodes containing a struct | ||
| 1559 | inode and pure ntfs inodes and at the same time fix some faulty | ||
| 1560 | error code paths in ntfs_read_inode(). | ||
| 1561 | - Show mount options in proc (inode.c::ntfs_show_options()). | ||
| 1562 | |||
| 1563 | tng-0.0.4 - Big changes, getting in line with Al Viro's comments. | ||
| 1564 | |||
| 1565 | - Modified (un)map_mft_record functions to be common for read and write | ||
| 1566 | case. To specify which is which, added extra parameter at front of | ||
| 1567 | parameter list. Pass either READ or WRITE to this, each has the | ||
| 1568 | obvious meaning. | ||
| 1569 | - General cleanups to allow for easier folding in vi. | ||
| 1570 | - attrib.c::decompress_mapping_pairs() now accepts the old runlist | ||
| 1571 | argument, and invokes attrib.c::merge_run_lists() to merge the old | ||
| 1572 | and the new runlists. | ||
| 1573 | - Removed attrib.c::find_first_attr(). | ||
| 1574 | - Implemented loading of attribute list and complete runlist for $MFT. | ||
| 1575 | This means we now cope with $MFT being spread across several mft | ||
| 1576 | records. | ||
| 1577 | - Adapt to 2.5.2-pre9 and the changed create_empty_buffers() syntax. | ||
| 1578 | - Adapt major/minor/kdev_t/[bk]devname stuff to new 2.5.x kernels. | ||
| 1579 | - Make ntfs_volume be allocated via kmalloc() instead of using a slab | ||
| 1580 | cache. There are too little ntfs_volume structures at any one time | ||
| 1581 | to justify a private slab cache. | ||
| 1582 | - Fix bogus kmap() use in async io completion. Now use kmap_atomic(). | ||
| 1583 | Use KM_BIO_IRQ on advice from IRC/kernel... | ||
| 1584 | - Use ntfs_map_page() in map_mft_record() and create ->readpage method | ||
| 1585 | for reading $MFT (ntfs_mft_readpage). In the process create dedicated | ||
| 1586 | address space operations (ntfs_mft_aops) for $MFT inode mapping. Also | ||
| 1587 | removed the now superfluous exports from the kernel core patch. | ||
| 1588 | - Fix a bug where kfree() was used instead of ntfs_free(). | ||
| 1589 | - Change map_mft_record() to take ntfs_inode as argument instead of | ||
| 1590 | vfs inode. Dito for unmap_mft_record(). Adapt all callers. | ||
| 1591 | - Add pointer to ntfs_volume to ntfs_inode. | ||
| 1592 | - Add mft record number and sequence number to ntfs_inode. Stop using | ||
| 1593 | i_ino and i_generation for in-driver purposes. | ||
| 1594 | - Implement attrib.c::merge_run_lists(). (Richard Russon) | ||
| 1595 | - Remove use of proper inodes by extent inodes. Move i_ino and | ||
| 1596 | i_generation to ntfs_inode to do this. Apply simplifications that | ||
| 1597 | result and remove iget_no_wait(), etc. | ||
| 1598 | - Pass ntfs_inode everywhere in the driver (used to be struct inode). | ||
| 1599 | - Add reference counting in ntfs_inode for the ntfs inode itself and | ||
| 1600 | for the mapped mft record. | ||
| 1601 | - Extend mft record mapping so we can (un)map extent mft records (new | ||
| 1602 | functions (un)map_extent_mft_record), and so mappings are reference | ||
| 1603 | counted and don't have to happen twice if already mapped - just ref | ||
| 1604 | count increases. | ||
| 1605 | - Add -o iocharset as alias to -o nls for backwards compatibility. | ||
| 1606 | - The latest core patch is now tiny. In fact just a single additional | ||
| 1607 | export is necessary over the base kernel. | ||
| 1608 | |||
| 1609 | tng-0.0.3 - Cleanups, enhancements, bug fixes. | ||
| 1610 | |||
| 1611 | - Work on attrib.c::decompress_mapping_pairs() to detect base extents | ||
| 1612 | and setup the runlist appropriately using knowledge provided by the | ||
| 1613 | sizes in the base attribute record. | ||
| 1614 | - Balance the get_/put_attr_search_ctx() calls so we don't leak memory | ||
| 1615 | any more. | ||
| 1616 | - Introduce ntfs_malloc_nofs() and ntfs_free() to allocate/free a single | ||
| 1617 | page or use vmalloc depending on the amount of memory requested. | ||
| 1618 | - Cleanup error output. The __FUNCTION__ "(): " is now added | ||
| 1619 | automatically. Introduced a new header file debug.h to support this | ||
| 1620 | and also moved ntfs_debug() function into it. | ||
| 1621 | - Make reading of compressed files more intelligent and especially get | ||
| 1622 | rid of the vmalloc_nofs() from readpage(). This now uses per CPU | ||
| 1623 | buffers (allocated at first mount with cluster size <= 4kiB and | ||
| 1624 | deallocated on last umount with cluster size <= 4kiB), and | ||
| 1625 | asynchronous io for the compressed data using a list of buffer heads. | ||
| 1626 | Er, we use synchronous io as async io only works on whole pages | ||
| 1627 | covered by buffers and not on individual buffer heads... | ||
| 1628 | - Bug fix for reading compressed files with sparse compression blocks. | ||
| 1629 | |||
| 1630 | tng-0.0.2 - Now handles larger/fragmented/compressed volumes/files/dirs. | ||
| 1631 | |||
| 1632 | - Fixed handling of directories when cluster size exceeds index block | ||
| 1633 | size. | ||
| 1634 | - Hide DOS only name space directory entries from readdir() but allow | ||
| 1635 | them in lookup(). This should fix the problem that Linux doesn't | ||
| 1636 | support directory hard links, while still allowing access to entries | ||
| 1637 | via their short file name. This also has the benefit of mimicking | ||
| 1638 | what Windows users are used to, so it is the ideal solution. | ||
| 1639 | - Implemented sync_page everywhere so no more hangs in D state when | ||
| 1640 | waiting for a page. | ||
| 1641 | - Stop using bforget() in favour of brelse(). | ||
| 1642 | - Stop locking buffers unnecessarily. | ||
| 1643 | - Implemented compressed files (inode->mapping contains uncompressed | ||
| 1644 | data, raw compressed data is currently bread() into a vmalloc()ed | ||
| 1645 | memory buffer). | ||
| 1646 | - Enable compressed directories. (Their index root is marked compressed | ||
| 1647 | to indicate that new files in that directory should be created | ||
| 1648 | compressed.) | ||
| 1649 | - Use vsnprintf rather than vsprintf in the ntfs_error and ntfs_warning | ||
| 1650 | functions. (Thanks to Will Dyson for pointing this out.) | ||
| 1651 | - Moved the ntfs_inode and ntfs_volume (the former ntfs_inode_info and | ||
| 1652 | ntfs_sb_info) out of the common inode and super_block structures and | ||
| 1653 | started using the generic_ip and generic_sbp pointers instead. This | ||
| 1654 | makes ntfs entirely private with respect to the kernel tree. | ||
| 1655 | - Detect compiler version and abort with error message if gcc less than | ||
| 1656 | 2.96 is used. | ||
| 1657 | - Fix bug in name comparison function in unistr.c. | ||
| 1658 | - Implement attribute lists part 1, the infrastructure: search contexts | ||
| 1659 | and operations, find_external_attr(), lookup_attr()) and make the | ||
| 1660 | code use the infrastructure. | ||
| 1661 | - Fix stupid buffer overflow bug that became apparent on larger run | ||
| 1662 | list containing attributes. | ||
| 1663 | - Fix bugs in readdir() that became apparent on larger directories. | ||
| 1664 | |||
| 1665 | The driver is now really useful and survives the test | ||
| 1666 | find . -type f -exec md5sum "{}" \; | ||
| 1667 | without any error messages on a over 1GiB sized partition with >16k | ||
| 1668 | files on it, including compressed files and directories and many files | ||
| 1669 | and directories with attribute lists. | ||
| 1670 | |||
| 1671 | tng-0.0.1 - The first useful version. | ||
| 1672 | |||
| 1673 | - Added ntfs_lookup(). | ||
| 1674 | - Added default upcase generation and handling. | ||
| 1675 | - Added compile options to be shown on module init. | ||
| 1676 | - Many bug fixes that were "hidden" before. | ||
| 1677 | - Update to latest kernel. | ||
| 1678 | - Added ntfs_readdir(). | ||
| 1679 | - Added file operations for mmap(), read(), open() and llseek(). We just | ||
| 1680 | use the generic ones. The whole point of going through implementing | ||
| 1681 | readpage() methods and where possible get_block() call backs is that | ||
| 1682 | this allows us to make use of the generic high level methods provided | ||
| 1683 | by the kernel. | ||
| 1684 | |||
| 1685 | The driver is now actually useful! Yey. (-: It undoubtedly has got bugs | ||
| 1686 | though and it doesn't implement accesssing compressed files yet. Also, | ||
| 1687 | accessing files with attribute list attributes is not implemented yet | ||
| 1688 | either. But for small or simple filesystems it should work and allow | ||
| 1689 | you to list directories, use stat on directory entries and the file | ||
| 1690 | system, open, read, mmap and llseek around in files. A big mile stone | ||
| 1691 | has been reached! | ||
| 1692 | |||
| 1693 | tng-0.0.0 - Initial version tag. | ||
| 1694 | |||
| 1695 | Initial driver implementation. The driver can mount and umount simple | ||
| 1696 | NTFS filesystems (i.e. ones without attribute lists in the system | ||
| 1697 | files). If the mount fails there might be problems in the error handling | ||
| 1698 | code paths, so be warned. Otherwise it seems to be loading the system | ||
| 1699 | files nicely and the mft record read mapping/unmapping seems to be | ||
| 1700 | working nicely, too. Proof of inode metadata in the page cache and non- | ||
| 1701 | resident file unnamed stream data in the page cache concepts is thus | ||
| 1702 | complete. | ||
diff --git a/fs/ocfs2/dlmglue.c b/fs/ocfs2/dlmglue.c index 8298608d4165..50c4ee805da4 100644 --- a/fs/ocfs2/dlmglue.c +++ b/fs/ocfs2/dlmglue.c | |||
| @@ -1881,7 +1881,7 @@ out: | |||
| 1881 | * ocfs2_file_lock() and ocfs2_file_unlock() map to a single pair of | 1881 | * ocfs2_file_lock() and ocfs2_file_unlock() map to a single pair of |
| 1882 | * flock() calls. The locking approach this requires is sufficiently | 1882 | * flock() calls. The locking approach this requires is sufficiently |
| 1883 | * different from all other cluster lock types that we implement a | 1883 | * different from all other cluster lock types that we implement a |
| 1884 | * seperate path to the "low-level" dlm calls. In particular: | 1884 | * separate path to the "low-level" dlm calls. In particular: |
| 1885 | * | 1885 | * |
| 1886 | * - No optimization of lock levels is done - we take at exactly | 1886 | * - No optimization of lock levels is done - we take at exactly |
| 1887 | * what's been requested. | 1887 | * what's been requested. |
diff --git a/fs/ocfs2/extent_map.c b/fs/ocfs2/extent_map.c index 5328529e7fd2..c562a7581cf9 100644 --- a/fs/ocfs2/extent_map.c +++ b/fs/ocfs2/extent_map.c | |||
| @@ -453,7 +453,7 @@ static int ocfs2_get_clusters_nocache(struct inode *inode, | |||
| 453 | if (i == -1) { | 453 | if (i == -1) { |
| 454 | /* | 454 | /* |
| 455 | * Holes can be larger than the maximum size of an | 455 | * Holes can be larger than the maximum size of an |
| 456 | * extent, so we return their lengths in a seperate | 456 | * extent, so we return their lengths in a separate |
| 457 | * field. | 457 | * field. |
| 458 | */ | 458 | */ |
| 459 | if (hole_len) { | 459 | if (hole_len) { |
diff --git a/fs/qnx4/inode.c b/fs/qnx4/inode.c index ebf3440d28ca..277575ddc05c 100644 --- a/fs/qnx4/inode.c +++ b/fs/qnx4/inode.c | |||
| @@ -201,7 +201,8 @@ static const char *qnx4_checkroot(struct super_block *sb) | |||
| 201 | rootdir = (struct qnx4_inode_entry *) (bh->b_data + i * QNX4_DIR_ENTRY_SIZE); | 201 | rootdir = (struct qnx4_inode_entry *) (bh->b_data + i * QNX4_DIR_ENTRY_SIZE); |
| 202 | if (rootdir->di_fname != NULL) { | 202 | if (rootdir->di_fname != NULL) { |
| 203 | QNX4DEBUG((KERN_INFO "rootdir entry found : [%s]\n", rootdir->di_fname)); | 203 | QNX4DEBUG((KERN_INFO "rootdir entry found : [%s]\n", rootdir->di_fname)); |
| 204 | if (!strncmp(rootdir->di_fname, QNX4_BMNAME, sizeof QNX4_BMNAME)) { | 204 | if (!strcmp(rootdir->di_fname, |
| 205 | QNX4_BMNAME)) { | ||
| 205 | found = 1; | 206 | found = 1; |
| 206 | qnx4_sb(sb)->BitMap = kmalloc( sizeof( struct qnx4_inode_entry ), GFP_KERNEL ); | 207 | qnx4_sb(sb)->BitMap = kmalloc( sizeof( struct qnx4_inode_entry ), GFP_KERNEL ); |
| 207 | if (!qnx4_sb(sb)->BitMap) { | 208 | if (!qnx4_sb(sb)->BitMap) { |
diff --git a/fs/reiserfs/bitmap.c b/fs/reiserfs/bitmap.c index dc014f7def05..483442e66ed6 100644 --- a/fs/reiserfs/bitmap.c +++ b/fs/reiserfs/bitmap.c | |||
| @@ -169,7 +169,7 @@ static int scan_bitmap_block(struct reiserfs_transaction_handle *th, | |||
| 169 | return 0; // No free blocks in this bitmap | 169 | return 0; // No free blocks in this bitmap |
| 170 | } | 170 | } |
| 171 | 171 | ||
| 172 | /* search for a first zero bit -- beggining of a window */ | 172 | /* search for a first zero bit -- beginning of a window */ |
| 173 | *beg = reiserfs_find_next_zero_le_bit | 173 | *beg = reiserfs_find_next_zero_le_bit |
| 174 | ((unsigned long *)(bh->b_data), boundary, *beg); | 174 | ((unsigned long *)(bh->b_data), boundary, *beg); |
| 175 | 175 | ||
diff --git a/fs/udf/inode.c b/fs/udf/inode.c index b57ab0402d89..86f0ccb80765 100644 --- a/fs/udf/inode.c +++ b/fs/udf/inode.c | |||
| @@ -106,7 +106,7 @@ void udf_clear_inode(struct inode *inode) | |||
| 106 | if (iinfo->i_alloc_type != ICBTAG_FLAG_AD_IN_ICB && | 106 | if (iinfo->i_alloc_type != ICBTAG_FLAG_AD_IN_ICB && |
| 107 | inode->i_size != iinfo->i_lenExtents) { | 107 | inode->i_size != iinfo->i_lenExtents) { |
| 108 | printk(KERN_WARNING "UDF-fs (%s): Inode %lu (mode %o) has " | 108 | printk(KERN_WARNING "UDF-fs (%s): Inode %lu (mode %o) has " |
| 109 | "inode size %llu different from extent lenght %llu. " | 109 | "inode size %llu different from extent length %llu. " |
| 110 | "Filesystem need not be standards compliant.\n", | 110 | "Filesystem need not be standards compliant.\n", |
| 111 | inode->i_sb->s_id, inode->i_ino, inode->i_mode, | 111 | inode->i_sb->s_id, inode->i_ino, inode->i_mode, |
| 112 | (unsigned long long)inode->i_size, | 112 | (unsigned long long)inode->i_size, |
diff --git a/include/linux/dm9000.h b/include/linux/dm9000.h index c30879cf93bc..96e87693d933 100644 --- a/include/linux/dm9000.h +++ b/include/linux/dm9000.h | |||
| @@ -23,7 +23,7 @@ | |||
| 23 | #define DM9000_PLATF_NO_EEPROM (0x0010) | 23 | #define DM9000_PLATF_NO_EEPROM (0x0010) |
| 24 | #define DM9000_PLATF_SIMPLE_PHY (0x0020) /* Use NSR to find LinkStatus */ | 24 | #define DM9000_PLATF_SIMPLE_PHY (0x0020) /* Use NSR to find LinkStatus */ |
| 25 | 25 | ||
| 26 | /* platfrom data for platfrom device structure's platfrom_data field */ | 26 | /* platform data for platform device structure's platform_data field */ |
| 27 | 27 | ||
| 28 | struct dm9000_plat_data { | 28 | struct dm9000_plat_data { |
| 29 | unsigned int flags; | 29 | unsigned int flags; |
diff --git a/include/linux/hil.h b/include/linux/hil.h index 13352d7d0caf..523785a9de70 100644 --- a/include/linux/hil.h +++ b/include/linux/hil.h | |||
| @@ -168,14 +168,14 @@ enum hil_command { | |||
| 168 | HIL_CMD_PR6 = 0x45, /* Prompt6 */ | 168 | HIL_CMD_PR6 = 0x45, /* Prompt6 */ |
| 169 | HIL_CMD_PR7 = 0x46, /* Prompt7 */ | 169 | HIL_CMD_PR7 = 0x46, /* Prompt7 */ |
| 170 | HIL_CMD_PRM = 0x47, /* Prompt (General Purpose) */ | 170 | HIL_CMD_PRM = 0x47, /* Prompt (General Purpose) */ |
| 171 | HIL_CMD_AK1 = 0x48, /* Acknowlege1 */ | 171 | HIL_CMD_AK1 = 0x48, /* Acknowledge1 */ |
| 172 | HIL_CMD_AK2 = 0x49, /* Acknowlege2 */ | 172 | HIL_CMD_AK2 = 0x49, /* Acknowledge2 */ |
| 173 | HIL_CMD_AK3 = 0x4a, /* Acknowlege3 */ | 173 | HIL_CMD_AK3 = 0x4a, /* Acknowledge3 */ |
| 174 | HIL_CMD_AK4 = 0x4b, /* Acknowlege4 */ | 174 | HIL_CMD_AK4 = 0x4b, /* Acknowledge4 */ |
| 175 | HIL_CMD_AK5 = 0x4c, /* Acknowlege5 */ | 175 | HIL_CMD_AK5 = 0x4c, /* Acknowledge5 */ |
| 176 | HIL_CMD_AK6 = 0x4d, /* Acknowlege6 */ | 176 | HIL_CMD_AK6 = 0x4d, /* Acknowledge6 */ |
| 177 | HIL_CMD_AK7 = 0x4e, /* Acknowlege7 */ | 177 | HIL_CMD_AK7 = 0x4e, /* Acknowledge7 */ |
| 178 | HIL_CMD_ACK = 0x4f, /* Acknowlege (General Purpose) */ | 178 | HIL_CMD_ACK = 0x4f, /* Acknowledge (General Purpose) */ |
| 179 | 179 | ||
| 180 | /* 0x50 to 0x78 reserved for future use */ | 180 | /* 0x50 to 0x78 reserved for future use */ |
| 181 | /* 0x80 to 0xEF device-specific commands */ | 181 | /* 0x80 to 0xEF device-specific commands */ |
diff --git a/include/linux/lru_cache.h b/include/linux/lru_cache.h index 3a2b2d9b0472..de48d167568b 100644 --- a/include/linux/lru_cache.h +++ b/include/linux/lru_cache.h | |||
| @@ -64,7 +64,7 @@ For crash recovery after replication node failure, | |||
| 64 | usually the condition is softened to regions that _may_ have been target of | 64 | usually the condition is softened to regions that _may_ have been target of |
| 65 | in-flight WRITE IO, e.g. by only lazily clearing the on-disk write-intent | 65 | in-flight WRITE IO, e.g. by only lazily clearing the on-disk write-intent |
| 66 | bitmap, trading frequency of meta data transactions against amount of | 66 | bitmap, trading frequency of meta data transactions against amount of |
| 67 | (possibly unneccessary) resync traffic. | 67 | (possibly unnecessary) resync traffic. |
| 68 | 68 | ||
| 69 | If we set a hard limit on the area that may be "hot" at any given time, we | 69 | If we set a hard limit on the area that may be "hot" at any given time, we |
| 70 | limit the amount of resync traffic needed for crash recovery. | 70 | limit the amount of resync traffic needed for crash recovery. |
diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index bc209d8b7b5c..cf9e458e96b0 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h | |||
| @@ -342,7 +342,7 @@ struct zone { | |||
| 342 | * prev_priority holds the scanning priority for this zone. It is | 342 | * prev_priority holds the scanning priority for this zone. It is |
| 343 | * defined as the scanning priority at which we achieved our reclaim | 343 | * defined as the scanning priority at which we achieved our reclaim |
| 344 | * target at the previous try_to_free_pages() or balance_pgdat() | 344 | * target at the previous try_to_free_pages() or balance_pgdat() |
| 345 | * invokation. | 345 | * invocation. |
| 346 | * | 346 | * |
| 347 | * We use prev_priority as a measure of how much stress page reclaim is | 347 | * We use prev_priority as a measure of how much stress page reclaim is |
| 348 | * under - it drives the swappiness decision: whether to unmap mapped | 348 | * under - it drives the swappiness decision: whether to unmap mapped |
diff --git a/include/linux/rbtree.h b/include/linux/rbtree.h index 9c295411d01f..5210a5c60877 100644 --- a/include/linux/rbtree.h +++ b/include/linux/rbtree.h | |||
| @@ -25,10 +25,10 @@ | |||
| 25 | 25 | ||
| 26 | Some example of insert and search follows here. The search is a plain | 26 | Some example of insert and search follows here. The search is a plain |
| 27 | normal search over an ordered tree. The insert instead must be implemented | 27 | normal search over an ordered tree. The insert instead must be implemented |
| 28 | int two steps: as first thing the code must insert the element in | 28 | in two steps: First, the code must insert the element in order as a red leaf |
| 29 | order as a red leaf in the tree, then the support library function | 29 | in the tree, and then the support library function rb_insert_color() must |
| 30 | rb_insert_color() must be called. Such function will do the | 30 | be called. Such function will do the not trivial work to rebalance the |
| 31 | not trivial work to rebalance the rbtree if necessary. | 31 | rbtree, if necessary. |
| 32 | 32 | ||
| 33 | ----------------------------------------------------------------------- | 33 | ----------------------------------------------------------------------- |
| 34 | static inline struct page * rb_search_page_cache(struct inode * inode, | 34 | static inline struct page * rb_search_page_cache(struct inode * inode, |
diff --git a/include/linux/sched.h b/include/linux/sched.h index 46c6f8d5dc06..c0ead33af5d0 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
| @@ -1473,7 +1473,7 @@ struct task_struct { | |||
| 1473 | 1473 | ||
| 1474 | struct list_head *scm_work_list; | 1474 | struct list_head *scm_work_list; |
| 1475 | #ifdef CONFIG_FUNCTION_GRAPH_TRACER | 1475 | #ifdef CONFIG_FUNCTION_GRAPH_TRACER |
| 1476 | /* Index of current stored adress in ret_stack */ | 1476 | /* Index of current stored address in ret_stack */ |
| 1477 | int curr_ret_stack; | 1477 | int curr_ret_stack; |
| 1478 | /* Stack of return addresses for return function tracing */ | 1478 | /* Stack of return addresses for return function tracing */ |
| 1479 | struct ftrace_ret_stack *ret_stack; | 1479 | struct ftrace_ret_stack *ret_stack; |
diff --git a/include/math-emu/op-common.h b/include/math-emu/op-common.h index f456534dcaf9..fd882261225e 100644 --- a/include/math-emu/op-common.h +++ b/include/math-emu/op-common.h | |||
| @@ -29,7 +29,7 @@ | |||
| 29 | _FP_FRAC_DECL_##wc(X) | 29 | _FP_FRAC_DECL_##wc(X) |
| 30 | 30 | ||
| 31 | /* | 31 | /* |
| 32 | * Finish truely unpacking a native fp value by classifying the kind | 32 | * Finish truly unpacking a native fp value by classifying the kind |
| 33 | * of fp value and normalizing both the exponent and the fraction. | 33 | * of fp value and normalizing both the exponent and the fraction. |
| 34 | */ | 34 | */ |
| 35 | 35 | ||
diff --git a/include/media/davinci/vpfe_capture.h b/include/media/davinci/vpfe_capture.h index d863e5e8426d..4314a5f6a087 100644 --- a/include/media/davinci/vpfe_capture.h +++ b/include/media/davinci/vpfe_capture.h | |||
| @@ -165,7 +165,7 @@ struct vpfe_device { | |||
| 165 | u8 started; | 165 | u8 started; |
| 166 | /* | 166 | /* |
| 167 | * offset where second field starts from the starting of the | 167 | * offset where second field starts from the starting of the |
| 168 | * buffer for field seperated YCbCr formats | 168 | * buffer for field separated YCbCr formats |
| 169 | */ | 169 | */ |
| 170 | u32 field_off; | 170 | u32 field_off; |
| 171 | }; | 171 | }; |
diff --git a/include/net/irda/irttp.h b/include/net/irda/irttp.h index 0788c23d2828..11aee7a2972a 100644 --- a/include/net/irda/irttp.h +++ b/include/net/irda/irttp.h | |||
| @@ -97,7 +97,7 @@ | |||
| 97 | #define TTP_MAX_SDU_SIZE 0x01 | 97 | #define TTP_MAX_SDU_SIZE 0x01 |
| 98 | 98 | ||
| 99 | /* | 99 | /* |
| 100 | * This structure contains all data assosiated with one instance of a TTP | 100 | * This structure contains all data associated with one instance of a TTP |
| 101 | * connection. | 101 | * connection. |
| 102 | */ | 102 | */ |
| 103 | struct tsap_cb { | 103 | struct tsap_cb { |
diff --git a/kernel/audit.c b/kernel/audit.c index 5feed232be9d..78f7f86aa238 100644 --- a/kernel/audit.c +++ b/kernel/audit.c | |||
| @@ -398,7 +398,7 @@ static void kauditd_send_skb(struct sk_buff *skb) | |||
| 398 | skb_get(skb); | 398 | skb_get(skb); |
| 399 | err = netlink_unicast(audit_sock, skb, audit_nlk_pid, 0); | 399 | err = netlink_unicast(audit_sock, skb, audit_nlk_pid, 0); |
| 400 | if (err < 0) { | 400 | if (err < 0) { |
| 401 | BUG_ON(err != -ECONNREFUSED); /* Shoudn't happen */ | 401 | BUG_ON(err != -ECONNREFUSED); /* Shouldn't happen */ |
| 402 | printk(KERN_ERR "audit: *NO* daemon at audit_pid=%d\n", audit_pid); | 402 | printk(KERN_ERR "audit: *NO* daemon at audit_pid=%d\n", audit_pid); |
| 403 | audit_log_lost("auditd dissapeared\n"); | 403 | audit_log_lost("auditd dissapeared\n"); |
| 404 | audit_pid = 0; | 404 | audit_pid = 0; |
diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c index d70394f12ee9..42ec11b2af8a 100644 --- a/kernel/irq/chip.c +++ b/kernel/irq/chip.c | |||
| @@ -554,7 +554,7 @@ out: | |||
| 554 | * signal. The occurence is latched into the irq controller hardware | 554 | * signal. The occurence is latched into the irq controller hardware |
| 555 | * and must be acked in order to be reenabled. After the ack another | 555 | * and must be acked in order to be reenabled. After the ack another |
| 556 | * interrupt can happen on the same source even before the first one | 556 | * interrupt can happen on the same source even before the first one |
| 557 | * is handled by the assosiacted event handler. If this happens it | 557 | * is handled by the associated event handler. If this happens it |
| 558 | * might be necessary to disable (mask) the interrupt depending on the | 558 | * might be necessary to disable (mask) the interrupt depending on the |
| 559 | * controller hardware. This requires to reenable the interrupt inside | 559 | * controller hardware. This requires to reenable the interrupt inside |
| 560 | * of the loop which handles the interrupts which have arrived while | 560 | * of the loop which handles the interrupts which have arrived while |
diff --git a/kernel/irq/devres.c b/kernel/irq/devres.c index d06df9c41cba..1ef4ffcdfa55 100644 --- a/kernel/irq/devres.c +++ b/kernel/irq/devres.c | |||
| @@ -42,7 +42,7 @@ static int devm_irq_match(struct device *dev, void *res, void *data) | |||
| 42 | * automatically freed on driver detach. | 42 | * automatically freed on driver detach. |
| 43 | * | 43 | * |
| 44 | * If an IRQ allocated with this function needs to be freed | 44 | * If an IRQ allocated with this function needs to be freed |
| 45 | * separately, dev_free_irq() must be used. | 45 | * separately, devm_free_irq() must be used. |
| 46 | */ | 46 | */ |
| 47 | int devm_request_threaded_irq(struct device *dev, unsigned int irq, | 47 | int devm_request_threaded_irq(struct device *dev, unsigned int irq, |
| 48 | irq_handler_t handler, irq_handler_t thread_fn, | 48 | irq_handler_t handler, irq_handler_t thread_fn, |
| @@ -81,7 +81,7 @@ EXPORT_SYMBOL(devm_request_threaded_irq); | |||
| 81 | * Except for the extra @dev argument, this function takes the | 81 | * Except for the extra @dev argument, this function takes the |
| 82 | * same arguments and performs the same function as free_irq(). | 82 | * same arguments and performs the same function as free_irq(). |
| 83 | * This function instead of free_irq() should be used to manually | 83 | * This function instead of free_irq() should be used to manually |
| 84 | * free IRQs allocated with dev_request_irq(). | 84 | * free IRQs allocated with devm_request_irq(). |
| 85 | */ | 85 | */ |
| 86 | void devm_free_irq(struct device *dev, unsigned int irq, void *dev_id) | 86 | void devm_free_irq(struct device *dev, unsigned int irq, void *dev_id) |
| 87 | { | 87 | { |
diff --git a/kernel/ksysfs.c b/kernel/ksysfs.c index 6b1ccc3f0205..21fe3c426948 100644 --- a/kernel/ksysfs.c +++ b/kernel/ksysfs.c | |||
| @@ -33,7 +33,7 @@ static ssize_t uevent_seqnum_show(struct kobject *kobj, | |||
| 33 | } | 33 | } |
| 34 | KERNEL_ATTR_RO(uevent_seqnum); | 34 | KERNEL_ATTR_RO(uevent_seqnum); |
| 35 | 35 | ||
| 36 | /* uevent helper program, used during early boo */ | 36 | /* uevent helper program, used during early boot */ |
| 37 | static ssize_t uevent_helper_show(struct kobject *kobj, | 37 | static ssize_t uevent_helper_show(struct kobject *kobj, |
| 38 | struct kobj_attribute *attr, char *buf) | 38 | struct kobj_attribute *attr, char *buf) |
| 39 | { | 39 | { |
diff --git a/kernel/params.c b/kernel/params.c index 8d95f5451b22..0c4fba664090 100644 --- a/kernel/params.c +++ b/kernel/params.c | |||
| @@ -401,8 +401,8 @@ int param_get_string(char *buffer, struct kernel_param *kp) | |||
| 401 | } | 401 | } |
| 402 | 402 | ||
| 403 | /* sysfs output in /sys/modules/XYZ/parameters/ */ | 403 | /* sysfs output in /sys/modules/XYZ/parameters/ */ |
| 404 | #define to_module_attr(n) container_of(n, struct module_attribute, attr); | 404 | #define to_module_attr(n) container_of(n, struct module_attribute, attr) |
| 405 | #define to_module_kobject(n) container_of(n, struct module_kobject, kobj); | 405 | #define to_module_kobject(n) container_of(n, struct module_kobject, kobj) |
| 406 | 406 | ||
| 407 | extern struct kernel_param __start___param[], __stop___param[]; | 407 | extern struct kernel_param __start___param[], __stop___param[]; |
| 408 | 408 | ||
| @@ -420,7 +420,7 @@ struct module_param_attrs | |||
| 420 | }; | 420 | }; |
| 421 | 421 | ||
| 422 | #ifdef CONFIG_SYSFS | 422 | #ifdef CONFIG_SYSFS |
| 423 | #define to_param_attr(n) container_of(n, struct param_attribute, mattr); | 423 | #define to_param_attr(n) container_of(n, struct param_attribute, mattr) |
| 424 | 424 | ||
| 425 | static ssize_t param_attr_show(struct module_attribute *mattr, | 425 | static ssize_t param_attr_show(struct module_attribute *mattr, |
| 426 | struct module *mod, char *buf) | 426 | struct module *mod, char *buf) |
diff --git a/kernel/sched_cpupri.c b/kernel/sched_cpupri.c index 82095bf2099f..fccf9fbb0d7b 100644 --- a/kernel/sched_cpupri.c +++ b/kernel/sched_cpupri.c | |||
| @@ -56,7 +56,7 @@ static int convert_prio(int prio) | |||
| 56 | * @lowest_mask: A mask to fill in with selected CPUs (or NULL) | 56 | * @lowest_mask: A mask to fill in with selected CPUs (or NULL) |
| 57 | * | 57 | * |
| 58 | * Note: This function returns the recommended CPUs as calculated during the | 58 | * Note: This function returns the recommended CPUs as calculated during the |
| 59 | * current invokation. By the time the call returns, the CPUs may have in | 59 | * current invocation. By the time the call returns, the CPUs may have in |
| 60 | * fact changed priorities any number of times. While not ideal, it is not | 60 | * fact changed priorities any number of times. While not ideal, it is not |
| 61 | * an issue of correctness since the normal rebalancer logic will correct | 61 | * an issue of correctness since the normal rebalancer logic will correct |
| 62 | * any discrepancies created by racing against the uncertainty of the current | 62 | * any discrepancies created by racing against the uncertainty of the current |
diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c index 0287f9f52f5a..a2f0fe951831 100644 --- a/kernel/trace/ring_buffer.c +++ b/kernel/trace/ring_buffer.c | |||
| @@ -2542,7 +2542,7 @@ EXPORT_SYMBOL_GPL(ring_buffer_record_disable); | |||
| 2542 | * @buffer: The ring buffer to enable writes | 2542 | * @buffer: The ring buffer to enable writes |
| 2543 | * | 2543 | * |
| 2544 | * Note, multiple disables will need the same number of enables | 2544 | * Note, multiple disables will need the same number of enables |
| 2545 | * to truely enable the writing (much like preempt_disable). | 2545 | * to truly enable the writing (much like preempt_disable). |
| 2546 | */ | 2546 | */ |
| 2547 | void ring_buffer_record_enable(struct ring_buffer *buffer) | 2547 | void ring_buffer_record_enable(struct ring_buffer *buffer) |
| 2548 | { | 2548 | { |
| @@ -2578,7 +2578,7 @@ EXPORT_SYMBOL_GPL(ring_buffer_record_disable_cpu); | |||
| 2578 | * @cpu: The CPU to enable. | 2578 | * @cpu: The CPU to enable. |
| 2579 | * | 2579 | * |
| 2580 | * Note, multiple disables will need the same number of enables | 2580 | * Note, multiple disables will need the same number of enables |
| 2581 | * to truely enable the writing (much like preempt_disable). | 2581 | * to truly enable the writing (much like preempt_disable). |
| 2582 | */ | 2582 | */ |
| 2583 | void ring_buffer_record_enable_cpu(struct ring_buffer *buffer, int cpu) | 2583 | void ring_buffer_record_enable_cpu(struct ring_buffer *buffer, int cpu) |
| 2584 | { | 2584 | { |
diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h index fd05bcaf91b0..09b39112a5e2 100644 --- a/kernel/trace/trace.h +++ b/kernel/trace/trace.h | |||
| @@ -550,7 +550,7 @@ static inline int ftrace_trace_task(struct task_struct *task) | |||
| 550 | * struct trace_parser - servers for reading the user input separated by spaces | 550 | * struct trace_parser - servers for reading the user input separated by spaces |
| 551 | * @cont: set if the input is not complete - no final space char was found | 551 | * @cont: set if the input is not complete - no final space char was found |
| 552 | * @buffer: holds the parsed user input | 552 | * @buffer: holds the parsed user input |
| 553 | * @idx: user input lenght | 553 | * @idx: user input length |
| 554 | * @size: buffer size | 554 | * @size: buffer size |
| 555 | */ | 555 | */ |
| 556 | struct trace_parser { | 556 | struct trace_parser { |
diff --git a/mm/highmem.c b/mm/highmem.c index 9c1e627f282e..bed8a8bfd01f 100644 --- a/mm/highmem.c +++ b/mm/highmem.c | |||
| @@ -220,7 +220,7 @@ EXPORT_SYMBOL(kmap_high); | |||
| 220 | * @page: &struct page to pin | 220 | * @page: &struct page to pin |
| 221 | * | 221 | * |
| 222 | * Returns the page's current virtual memory address, or NULL if no mapping | 222 | * Returns the page's current virtual memory address, or NULL if no mapping |
| 223 | * exists. When and only when a non null address is returned then a | 223 | * exists. If and only if a non null address is returned then a |
| 224 | * matching call to kunmap_high() is necessary. | 224 | * matching call to kunmap_high() is necessary. |
| 225 | * | 225 | * |
| 226 | * This can be called from any context. | 226 | * This can be called from any context. |
| @@ -2960,7 +2960,7 @@ static void slab_mem_offline_callback(void *arg) | |||
| 2960 | /* | 2960 | /* |
| 2961 | * if n->nr_slabs > 0, slabs still exist on the node | 2961 | * if n->nr_slabs > 0, slabs still exist on the node |
| 2962 | * that is going down. We were unable to free them, | 2962 | * that is going down. We were unable to free them, |
| 2963 | * and offline_pages() function shoudn't call this | 2963 | * and offline_pages() function shouldn't call this |
| 2964 | * callback. So, we must fail. | 2964 | * callback. So, we must fail. |
| 2965 | */ | 2965 | */ |
| 2966 | BUG_ON(slabs_node(s, offline_node)); | 2966 | BUG_ON(slabs_node(s, offline_node)); |
diff --git a/net/ipv4/tcp_timer.c b/net/ipv4/tcp_timer.c index a17629b8912e..b2e6bbccaee1 100644 --- a/net/ipv4/tcp_timer.c +++ b/net/ipv4/tcp_timer.c | |||
| @@ -134,7 +134,7 @@ static void tcp_mtu_probing(struct inet_connection_sock *icsk, struct sock *sk) | |||
| 134 | } | 134 | } |
| 135 | 135 | ||
| 136 | /* This function calculates a "timeout" which is equivalent to the timeout of a | 136 | /* This function calculates a "timeout" which is equivalent to the timeout of a |
| 137 | * TCP connection after "boundary" unsucessful, exponentially backed-off | 137 | * TCP connection after "boundary" unsuccessful, exponentially backed-off |
| 138 | * retransmissions with an initial RTO of TCP_RTO_MIN. | 138 | * retransmissions with an initial RTO of TCP_RTO_MIN. |
| 139 | */ | 139 | */ |
| 140 | static bool retransmits_timed_out(struct sock *sk, | 140 | static bool retransmits_timed_out(struct sock *sk, |
diff --git a/net/mac80211/mesh_plink.c b/net/mac80211/mesh_plink.c index bc4e20e57ff5..1a29c4a8139e 100644 --- a/net/mac80211/mesh_plink.c +++ b/net/mac80211/mesh_plink.c | |||
| @@ -744,7 +744,7 @@ void mesh_rx_plink_frame(struct ieee80211_sub_if_data *sdata, struct ieee80211_m | |||
| 744 | break; | 744 | break; |
| 745 | default: | 745 | default: |
| 746 | /* should not get here, PLINK_BLOCKED is dealt with at the | 746 | /* should not get here, PLINK_BLOCKED is dealt with at the |
| 747 | * beggining of the function | 747 | * beginning of the function |
| 748 | */ | 748 | */ |
| 749 | spin_unlock_bh(&sta->lock); | 749 | spin_unlock_bh(&sta->lock); |
| 750 | break; | 750 | break; |
diff --git a/net/netfilter/nf_conntrack_sip.c b/net/netfilter/nf_conntrack_sip.c index 8dd75d90efc0..c6cd1b84eddd 100644 --- a/net/netfilter/nf_conntrack_sip.c +++ b/net/netfilter/nf_conntrack_sip.c | |||
| @@ -284,7 +284,7 @@ EXPORT_SYMBOL_GPL(ct_sip_parse_request); | |||
| 284 | * tabs, spaces and continuation lines, which are treated as a single whitespace | 284 | * tabs, spaces and continuation lines, which are treated as a single whitespace |
| 285 | * character. | 285 | * character. |
| 286 | * | 286 | * |
| 287 | * Some headers may appear multiple times. A comma seperated list of values is | 287 | * Some headers may appear multiple times. A comma separated list of values is |
| 288 | * equivalent to multiple headers. | 288 | * equivalent to multiple headers. |
| 289 | */ | 289 | */ |
| 290 | static const struct sip_header ct_sip_hdrs[] = { | 290 | static const struct sip_header ct_sip_hdrs[] = { |
| @@ -421,7 +421,7 @@ int ct_sip_get_header(const struct nf_conn *ct, const char *dptr, | |||
| 421 | } | 421 | } |
| 422 | EXPORT_SYMBOL_GPL(ct_sip_get_header); | 422 | EXPORT_SYMBOL_GPL(ct_sip_get_header); |
| 423 | 423 | ||
| 424 | /* Get next header field in a list of comma seperated values */ | 424 | /* Get next header field in a list of comma separated values */ |
| 425 | static int ct_sip_next_header(const struct nf_conn *ct, const char *dptr, | 425 | static int ct_sip_next_header(const struct nf_conn *ct, const char *dptr, |
| 426 | unsigned int dataoff, unsigned int datalen, | 426 | unsigned int dataoff, unsigned int datalen, |
| 427 | enum sip_header_types type, | 427 | enum sip_header_types type, |
diff --git a/net/netfilter/xt_hashlimit.c b/net/netfilter/xt_hashlimit.c index d952806b6469..9e9c48963942 100644 --- a/net/netfilter/xt_hashlimit.c +++ b/net/netfilter/xt_hashlimit.c | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * xt_hashlimit - Netfilter module to limit the number of packets per time | 2 | * xt_hashlimit - Netfilter module to limit the number of packets per time |
| 3 | * seperately for each hashbucket (sourceip/sourceport/dstip/dstport) | 3 | * separately for each hashbucket (sourceip/sourceport/dstip/dstport) |
| 4 | * | 4 | * |
| 5 | * (C) 2003-2004 by Harald Welte <laforge@netfilter.org> | 5 | * (C) 2003-2004 by Harald Welte <laforge@netfilter.org> |
| 6 | * Copyright © CC Computer Consultants GmbH, 2007 - 2008 | 6 | * Copyright © CC Computer Consultants GmbH, 2007 - 2008 |
diff --git a/net/sctp/sm_sideeffect.c b/net/sctp/sm_sideeffect.c index 4e4ca65cd320..500886bda9b4 100644 --- a/net/sctp/sm_sideeffect.c +++ b/net/sctp/sm_sideeffect.c | |||
| @@ -475,7 +475,7 @@ static void sctp_do_8_2_transport_strike(struct sctp_association *asoc, | |||
| 475 | * used to provide an upper bound to this doubling operation. | 475 | * used to provide an upper bound to this doubling operation. |
| 476 | * | 476 | * |
| 477 | * Special Case: the first HB doesn't trigger exponential backoff. | 477 | * Special Case: the first HB doesn't trigger exponential backoff. |
| 478 | * The first unacknowleged HB triggers it. We do this with a flag | 478 | * The first unacknowledged HB triggers it. We do this with a flag |
| 479 | * that indicates that we have an outstanding HB. | 479 | * that indicates that we have an outstanding HB. |
| 480 | */ | 480 | */ |
| 481 | if (!is_hb || transport->hb_sent) { | 481 | if (!is_hb || transport->hb_sent) { |
diff --git a/scripts/gfp-translate b/scripts/gfp-translate index 073cb6d152a0..d81b968d864e 100644 --- a/scripts/gfp-translate +++ b/scripts/gfp-translate | |||
| @@ -19,7 +19,7 @@ usage() { | |||
| 19 | exit 0 | 19 | exit 0 |
| 20 | } | 20 | } |
| 21 | 21 | ||
| 22 | # Parse command-line arguements | 22 | # Parse command-line arguments |
| 23 | while [ $# -gt 0 ]; do | 23 | while [ $# -gt 0 ]; do |
| 24 | case $1 in | 24 | case $1 in |
| 25 | --source) | 25 | --source) |
diff --git a/security/selinux/avc.c b/security/selinux/avc.c index db0fd9f33499..989fef82563a 100644 --- a/security/selinux/avc.c +++ b/security/selinux/avc.c | |||
| @@ -337,7 +337,7 @@ static inline struct avc_node *avc_search_node(u32 ssid, u32 tsid, u16 tclass) | |||
| 337 | * Look up an AVC entry that is valid for the | 337 | * Look up an AVC entry that is valid for the |
| 338 | * (@ssid, @tsid), interpreting the permissions | 338 | * (@ssid, @tsid), interpreting the permissions |
| 339 | * based on @tclass. If a valid AVC entry exists, | 339 | * based on @tclass. If a valid AVC entry exists, |
| 340 | * then this function return the avc_node. | 340 | * then this function returns the avc_node. |
| 341 | * Otherwise, this function returns NULL. | 341 | * Otherwise, this function returns NULL. |
| 342 | */ | 342 | */ |
| 343 | static struct avc_node *avc_lookup(u32 ssid, u32 tsid, u16 tclass) | 343 | static struct avc_node *avc_lookup(u32 ssid, u32 tsid, u16 tclass) |
| @@ -523,7 +523,7 @@ void avc_audit(u32 ssid, u32 tsid, | |||
| 523 | * @perms: permissions | 523 | * @perms: permissions |
| 524 | * | 524 | * |
| 525 | * Register a callback function for events in the set @events | 525 | * Register a callback function for events in the set @events |
| 526 | * related to the SID pair (@ssid, @tsid) and | 526 | * related to the SID pair (@ssid, @tsid) |
| 527 | * and the permissions @perms, interpreting | 527 | * and the permissions @perms, interpreting |
| 528 | * @perms based on @tclass. Returns %0 on success or | 528 | * @perms based on @tclass. Returns %0 on success or |
| 529 | * -%ENOMEM if insufficient memory exists to add the callback. | 529 | * -%ENOMEM if insufficient memory exists to add the callback. |
| @@ -568,7 +568,7 @@ static inline int avc_sidcmp(u32 x, u32 y) | |||
| 568 | * | 568 | * |
| 569 | * if a valid AVC entry doesn't exist,this function returns -ENOENT. | 569 | * if a valid AVC entry doesn't exist,this function returns -ENOENT. |
| 570 | * if kmalloc() called internal returns NULL, this function returns -ENOMEM. | 570 | * if kmalloc() called internal returns NULL, this function returns -ENOMEM. |
| 571 | * otherwise, this function update the AVC entry. The original AVC-entry object | 571 | * otherwise, this function updates the AVC entry. The original AVC-entry object |
| 572 | * will release later by RCU. | 572 | * will release later by RCU. |
| 573 | */ | 573 | */ |
| 574 | static int avc_update_node(u32 event, u32 perms, u32 ssid, u32 tsid, u16 tclass, | 574 | static int avc_update_node(u32 event, u32 perms, u32 ssid, u32 tsid, u16 tclass, |
diff --git a/sound/pci/rme9652/hdspm.c b/sound/pci/rme9652/hdspm.c index 3d72c1effeef..547b713d7204 100644 --- a/sound/pci/rme9652/hdspm.c +++ b/sound/pci/rme9652/hdspm.c | |||
| @@ -2479,7 +2479,7 @@ static int snd_hdspm_put_qs_wire(struct snd_kcontrol *kcontrol, | |||
| 2479 | on MADICARD | 2479 | on MADICARD |
| 2480 | - playback mixer matrix: [channelout+64] [output] [value] | 2480 | - playback mixer matrix: [channelout+64] [output] [value] |
| 2481 | - input(thru) mixer matrix: [channelin] [output] [value] | 2481 | - input(thru) mixer matrix: [channelin] [output] [value] |
| 2482 | (better do 2 kontrols for seperation ?) | 2482 | (better do 2 kontrols for separation ?) |
| 2483 | */ | 2483 | */ |
| 2484 | 2484 | ||
| 2485 | #define HDSPM_MIXER(xname, xindex) \ | 2485 | #define HDSPM_MIXER(xname, xindex) \ |
diff --git a/sound/soc/codecs/wm8990.c b/sound/soc/codecs/wm8990.c index a54dc77b7f34..056b787b6ee0 100644 --- a/sound/soc/codecs/wm8990.c +++ b/sound/soc/codecs/wm8990.c | |||
| @@ -990,7 +990,7 @@ static int wm8990_set_dai_pll(struct snd_soc_dai *codec_dai, int pll_id, | |||
| 990 | reg = snd_soc_read(codec, WM8990_CLOCKING_2); | 990 | reg = snd_soc_read(codec, WM8990_CLOCKING_2); |
| 991 | snd_soc_write(codec, WM8990_CLOCKING_2, reg | WM8990_SYSCLK_SRC); | 991 | snd_soc_write(codec, WM8990_CLOCKING_2, reg | WM8990_SYSCLK_SRC); |
| 992 | 992 | ||
| 993 | /* set up N , fractional mode and pre-divisor if neccessary */ | 993 | /* set up N , fractional mode and pre-divisor if necessary */ |
| 994 | snd_soc_write(codec, WM8990_PLL1, pll_div.n | WM8990_SDM | | 994 | snd_soc_write(codec, WM8990_PLL1, pll_div.n | WM8990_SDM | |
| 995 | (pll_div.div2?WM8990_PRESCALE:0)); | 995 | (pll_div.div2?WM8990_PRESCALE:0)); |
| 996 | snd_soc_write(codec, WM8990_PLL2, (u8)(pll_div.k>>8)); | 996 | snd_soc_write(codec, WM8990_PLL2, (u8)(pll_div.k>>8)); |
diff --git a/tools/perf/perf.c b/tools/perf/perf.c index 57cb107c1f13..cd32c200cdb3 100644 --- a/tools/perf/perf.c +++ b/tools/perf/perf.c | |||
| @@ -445,7 +445,7 @@ int main(int argc, const char **argv) | |||
| 445 | 445 | ||
| 446 | /* | 446 | /* |
| 447 | * We use PATH to find perf commands, but we prepend some higher | 447 | * We use PATH to find perf commands, but we prepend some higher |
| 448 | * precidence paths: the "--exec-path" option, the PERF_EXEC_PATH | 448 | * precedence paths: the "--exec-path" option, the PERF_EXEC_PATH |
| 449 | * environment, and the $(perfexecdir) from the Makefile at build | 449 | * environment, and the $(perfexecdir) from the Makefile at build |
| 450 | * time. | 450 | * time. |
| 451 | */ | 451 | */ |
diff --git a/tools/perf/util/hist.c b/tools/perf/util/hist.c index e8daf5ca6fd2..44408c2621cf 100644 --- a/tools/perf/util/hist.c +++ b/tools/perf/util/hist.c | |||
| @@ -321,7 +321,7 @@ static size_t __callchain__fprintf_graph(FILE *fp, struct callchain_node *self, | |||
| 321 | new_depth_mask &= ~(1 << (depth - 1)); | 321 | new_depth_mask &= ~(1 << (depth - 1)); |
| 322 | 322 | ||
| 323 | /* | 323 | /* |
| 324 | * But we keep the older depth mask for the line seperator | 324 | * But we keep the older depth mask for the line separator |
| 325 | * to keep the level link until we reach the last child | 325 | * to keep the level link until we reach the last child |
| 326 | */ | 326 | */ |
| 327 | ret += ipchain__fprintf_graph_line(fp, depth, depth_mask, | 327 | ret += ipchain__fprintf_graph_line(fp, depth, depth_mask, |
