Merge tag 'for-v3.10' of git://git.infradead.org/users/cbou/linux-pstore
Pull pstore update from Anton Vorontsov: - A new platform data parameter to specify ECC configuration; - Rounding fixup to not waste memory in ecc_blocks; - Restore ECC information printouts; - A small code cleanup: use kmemdup where appropriate. * tag 'for-v3.10' of git://git.infradead.org/users/cbou/linux-pstore: pstore/ram: Restore ecc information block pstore/ram: Allow specifying ecc parameters in platform data pstore/ram: Include ecc_size when calculating ecc_block pstore: Replace calls to kmalloc and memcpy with kmemdup
This commit is contained in:
@@ -26,6 +26,13 @@
|
||||
struct persistent_ram_buffer;
|
||||
struct rs_control;
|
||||
|
||||
struct persistent_ram_ecc_info {
|
||||
int block_size;
|
||||
int ecc_size;
|
||||
int symsize;
|
||||
int poly;
|
||||
};
|
||||
|
||||
struct persistent_ram_zone {
|
||||
phys_addr_t paddr;
|
||||
size_t size;
|
||||
@@ -39,15 +46,14 @@ struct persistent_ram_zone {
|
||||
struct rs_control *rs_decoder;
|
||||
int corrected_bytes;
|
||||
int bad_blocks;
|
||||
int ecc_block_size;
|
||||
int ecc_size;
|
||||
struct persistent_ram_ecc_info ecc_info;
|
||||
|
||||
char *old_log;
|
||||
size_t old_log_size;
|
||||
};
|
||||
|
||||
struct persistent_ram_zone *persistent_ram_new(phys_addr_t start, size_t size,
|
||||
u32 sig, int ecc_size);
|
||||
u32 sig, struct persistent_ram_ecc_info *ecc_info);
|
||||
void persistent_ram_free(struct persistent_ram_zone *prz);
|
||||
void persistent_ram_zap(struct persistent_ram_zone *prz);
|
||||
|
||||
@@ -74,7 +80,7 @@ struct ramoops_platform_data {
|
||||
unsigned long console_size;
|
||||
unsigned long ftrace_size;
|
||||
int dump_oops;
|
||||
int ecc_size;
|
||||
struct persistent_ram_ecc_info ecc_info;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user