Lines Matching refs:mcelog
32 static struct mce_log_buffer *mcelog; variable
47 entry = mcelog->next; in dev_mce_log()
53 if (entry >= mcelog->len) { in dev_mce_log()
54 set_bit(MCE_OVERFLOW, (unsigned long *)&mcelog->flags); in dev_mce_log()
58 mcelog->next = entry + 1; in dev_mce_log()
60 memcpy(mcelog->entry + entry, mce, sizeof(struct mce)); in dev_mce_log()
61 mcelog->entry[entry].finished = 1; in dev_mce_log()
62 mcelog->entry[entry].kflags = 0; in dev_mce_log()
219 if (*off != 0 || usize < mcelog->len * sizeof(struct mce)) in mce_chrdev_read()
222 next = mcelog->next; in mce_chrdev_read()
226 struct mce *m = &mcelog->entry[i]; in mce_chrdev_read()
232 memset(mcelog->entry, 0, next * sizeof(struct mce)); in mce_chrdev_read()
233 mcelog->next = 0; in mce_chrdev_read()
247 if (READ_ONCE(mcelog->next)) in mce_chrdev_poll()
266 return put_user(mcelog->len, p); in mce_chrdev_ioctl()
268 return put_user(xchg(&mcelog->flags, 0), p); in mce_chrdev_ioctl()
341 mcelog = kzalloc(struct_size(mcelog, entry, mce_log_len), GFP_KERNEL); in dev_mcelog_init_device()
342 if (!mcelog) in dev_mcelog_init_device()
345 memcpy(mcelog->signature, MCE_LOG_SIGNATURE, sizeof(mcelog->signature)); in dev_mcelog_init_device()
346 mcelog->len = mce_log_len; in dev_mcelog_init_device()
347 mcelog->recordlen = sizeof(struct mce); in dev_mcelog_init_device()
358 kfree(mcelog); in dev_mcelog_init_device()