lkml.org 
[lkml]   [2012]   [Oct]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [PATCH v2 3/5] efi_pstore: Remove a logic erasing entries from a write callback to hold multiple logs
Date
> > -               list_del(&found->list);
> > + sprintf(name, "dump-type%u-%u-%lu", type, part,
> > + get_seconds());
>
> Actually, nothing seems to be ensuring that the value used here ends up being the same as the ctime :\ Consider what happens if the
> get_seconds() call here happens at second N, and the i_ctime is collected at time N+1. The object wouldn't be able to be deleted after
> patch 4/5 is applied. How can we better ensure that the i_ctime is the same value as serialized into the efi var name here?

i_ctime of pstore file system is different from normal file systems.
As I said in patch v1, i_ctime of pstore means the date that the record was "originally" stored.

I_ctime is always set to N.
Here is the scenario.

1. writing time
- get_seconds() call here happens at second N
- "N" is stored to a variable name

2. System reboots...
3. System boots up...

4. reading time
- pstore calls a read callback, efi_pstore_read()
- efi_pstore_read extracts ctime, "N", from the virable name
- efi_pstore passes "N" to pstore file system
- pstore create a file, /dev/pstore/dmesg* and set "N" to i_ctime

Pstore file system doesn't set i_ctime by itself but set ctime passed by platform drivers.

Seiji


\
 
 \ /
  Last update: 2012-10-25 22:41    [W:0.144 / U:0.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site