|
@@ -1208,8 +1208,8 @@ static int kallsyms__delta(struct map *map, const char *filename, u64 *delta)
|
|
|
return 0;
|
|
return 0;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-int dso__load_kallsyms(struct dso *dso, const char *filename,
|
|
|
|
|
- struct map *map, symbol_filter_t filter)
|
|
|
|
|
|
|
+int __dso__load_kallsyms(struct dso *dso, const char *filename,
|
|
|
|
|
+ struct map *map, bool no_kcore, symbol_filter_t filter)
|
|
|
{
|
|
{
|
|
|
u64 delta = 0;
|
|
u64 delta = 0;
|
|
|
|
|
|
|
@@ -1230,12 +1230,18 @@ int dso__load_kallsyms(struct dso *dso, const char *filename,
|
|
|
else
|
|
else
|
|
|
dso->symtab_type = DSO_BINARY_TYPE__KALLSYMS;
|
|
dso->symtab_type = DSO_BINARY_TYPE__KALLSYMS;
|
|
|
|
|
|
|
|
- if (!dso__load_kcore(dso, map, filename))
|
|
|
|
|
|
|
+ if (!no_kcore && !dso__load_kcore(dso, map, filename))
|
|
|
return dso__split_kallsyms_for_kcore(dso, map, filter);
|
|
return dso__split_kallsyms_for_kcore(dso, map, filter);
|
|
|
else
|
|
else
|
|
|
return dso__split_kallsyms(dso, map, delta, filter);
|
|
return dso__split_kallsyms(dso, map, delta, filter);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+int dso__load_kallsyms(struct dso *dso, const char *filename,
|
|
|
|
|
+ struct map *map, symbol_filter_t filter)
|
|
|
|
|
+{
|
|
|
|
|
+ return __dso__load_kallsyms(dso, filename, map, false, filter);
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
static int dso__load_perf_map(struct dso *dso, struct map *map,
|
|
static int dso__load_perf_map(struct dso *dso, struct map *map,
|
|
|
symbol_filter_t filter)
|
|
symbol_filter_t filter)
|
|
|
{
|
|
{
|