/* * fs/partitions/karma.c * Rio Karma partition info. * * Copyright (C) 2006 Bob Copeland (me@bobcopeland.com) * based on osf.c */ #include "check.h" #include "karma.h" #include <linux/compiler.h>
int karma_partition(struct parsed_partitions *state) { int i; int slot = 1; Sector sect; unsigned char *data; struct disklabel { u8 d_reserved[270]; struct d_partition { __le32 p_res; u8 p_fstype; u8 p_res2[3]; __le32 p_offset; __le32 p_size; } d_partitions[2]; u8 d_blank[208]; __le16 d_magic; } __packed *label; struct d_partition *p; data = read_part_sector(state, 0, §); if (!data) return -1; label = (struct disklabel *)data; if (le16_to_cpu(label->d_magic) != KARMA_LABEL_MAGIC) { put_dev_sector(sect); return 0; } p = label->d_partitions; for (i = 0 ; i < 2; i++, p++) { if (slot == state->limit) break; if (p->p_fstype == 0x4d && le32_to_cpu(p->p_size)) { put_partition(state, slot, le32_to_cpu(p->p_offset), le32_to_cpu(p->p_size)); } slot++; } strlcat(state->pp_buf, "\n", PAGE_SIZE); put_dev_sector(sect); return 1; }Contributors
Person | Tokens | Prop | Commits | CommitProp | |
bob copeland | bob copeland | 215 | 95.56% | 1 | 25.00% |
alexey dobriyan | alexey dobriyan | 7 | 3.11% | 1 | 25.00% |
tejun heo | tejun heo | 2 | 0.89% | 1 | 25.00% |
gideon israel dsouza | gideon israel dsouza | 1 | 0.44% | 1 | 25.00% |
Total | 225 | 100.00% | 4 | 100.00% |
Person | Tokens | Prop | Commits | CommitProp | |
bob copeland | bob copeland | 222 | 94.47% | 1 | 25.00% |
alexey dobriyan | alexey dobriyan | 7 | 2.98% | 1 | 25.00% |
gideon israel dsouza | gideon israel dsouza | 4 | 1.70% | 1 | 25.00% |
tejun heo | tejun heo | 2 | 0.85% | 1 | 25.00% |
Total | 235 | 100.00% | 4 | 100.00% |