Le 14/06/2019 à 21:00, Andrew Morton a écrit :
On Fri, 14 Jun 2019 12:01:09 +0200 David Hildenbrand <david@xxxxxxxxxx> wrote:
We are using a mixture of "int" and "unsigned long". Let's make this
consistent by using "unsigned long" everywhere. We'll do the same with
memory block ids next.
...
- int i, ret, section_count = 0;
+ unsigned long i;
...
- unsigned int i;
+ unsigned long i;
Maybe I did too much fortran back in the day, but I think the
expectation is that a variable called "i" has type "int".
This?
s/unsigned long i/unsigned long section_nr/
From my point of view you degrade readability by doing that.
section_nr_to_pfn(mem->start_section_nr + section_nr);
Three times the word 'section_nr' in one line, is that worth it ? Gives
me headache.
Codying style says the following, which makes full sense in my opinion:
LOCAL variable names should be short, and to the point. If you have
some random integer loop counter, it should probably be called ``i``.
Calling it ``loop_counter`` is non-productive, if there is no chance of it
being mis-understood.
What about just naming it 'nr' if we want to use something else than 'i' ?
Christophe
--- a/drivers/base/memory.c~mm-section-numbers-use-the-type-unsigned-long-fix
+++ a/drivers/base/memory.c
@@ -131,17 +131,17 @@ static ssize_t phys_index_show(struct de
static ssize_t removable_show(struct device *dev, struct device_attribute *attr,
char *buf)
{
- unsigned long i, pfn;
+ unsigned long section_nr, pfn;
int ret = 1;
struct memory_block *mem = to_memory_block(dev);
if (mem->state != MEM_ONLINE)
goto out;
- for (i = 0; i < sections_per_block; i++) {
- if (!present_section_nr(mem->start_section_nr + i))
+ for (section_nr = 0; section_nr < sections_per_block; section_nr++) {
+ if (!present_section_nr(mem->start_section_nr + section_nr))
continue;
- pfn = section_nr_to_pfn(mem->start_section_nr + i);
+ pfn = section_nr_to_pfn(mem->start_section_nr + section_nr);
ret &= is_mem_section_removable(pfn, PAGES_PER_SECTION);
}
@@ -695,12 +695,12 @@ static int add_memory_block(unsigned lon
{
int ret, section_count = 0;
struct memory_block *mem;
- unsigned long i;
+ unsigned long section_nr;
- for (i = base_section_nr;
- i < base_section_nr + sections_per_block;
- i++)
- if (present_section_nr(i))
+ for (section_nr = base_section_nr;
+ section_nr < base_section_nr + sections_per_block;
+ section_nr++)
+ if (present_section_nr(section_nr))
section_count++;
if (section_count == 0)
@@ -823,7 +823,7 @@ static const struct attribute_group *mem
*/
int __init memory_dev_init(void)
{
- unsigned long i;
+ unsigned long section_nr;
int ret;
int err;
unsigned long block_sz;
@@ -840,9 +840,9 @@ int __init memory_dev_init(void)
* during boot and have been initialized
*/
mutex_lock(&mem_sysfs_mutex);
- for (i = 0; i <= __highest_present_section_nr;
- i += sections_per_block) {
- err = add_memory_block(i);
+ for (section_nr = 0; section_nr <= __highest_present_section_nr;
+ section_nr += sections_per_block) {
+ err = add_memory_block(section_nr);
if (!ret)
ret = err;
}
_