Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a01b784a authored by Yi Jin's avatar Yi Jin Committed by android-build-merger
Browse files

Merge "Optimize incidentd memory usage" into pi-dev am: 12fa6b4f

am: 7406b660

Change-Id: I429ec5a6860646aac1104da2e9af3858426835c2
parents d56cc075 7406b660
Loading
Loading
Loading
Loading
+0 −6
Original line number Original line Diff line number Diff line
@@ -41,20 +41,16 @@ else
    LOCAL_CFLAGS += \
    LOCAL_CFLAGS += \
            -Os
            -Os
endif
endif

LOCAL_C_INCLUDES += $(LOCAL_PATH)/src
LOCAL_C_INCLUDES += $(LOCAL_PATH)/src


LOCAL_SHARED_LIBRARIES := \
LOCAL_SHARED_LIBRARIES := \
        libbase \
        libbase \
        libbinder \
        libbinder \
        libcutils \
        libdebuggerd_client \
        libdebuggerd_client \
        libdumputils \
        libdumputils \
        libincident \
        libincident \
        liblog \
        liblog \
        libprotobuf-cpp-lite \
        libprotoutil \
        libprotoutil \
        libselinux \
        libservices \
        libservices \
        libutils
        libutils


@@ -122,14 +118,12 @@ LOCAL_STATIC_LIBRARIES := \
LOCAL_SHARED_LIBRARIES := \
LOCAL_SHARED_LIBRARIES := \
    libbase \
    libbase \
    libbinder \
    libbinder \
    libcutils \
    libdebuggerd_client \
    libdebuggerd_client \
    libdumputils \
    libdumputils \
    libincident \
    libincident \
    liblog \
    liblog \
    libprotobuf-cpp-lite \
    libprotobuf-cpp-lite \
    libprotoutil \
    libprotoutil \
    libselinux \
    libservices \
    libservices \
    libutils \
    libutils \


+1 −2
Original line number Original line Diff line number Diff line
@@ -358,8 +358,7 @@ status_t IncidentService::cmd_privacy(FILE* in, FILE* out, FILE* err, Vector<Str
                return error;
                return error;
            }
            }
            fprintf(err, "Read %zu bytes\n", buf.size());
            fprintf(err, "Read %zu bytes\n", buf.size());
            auto data = buf.data();
            PrivacyBuffer pBuf(p, buf.data());
            PrivacyBuffer pBuf(p, data);


            PrivacySpec spec = PrivacySpec::new_spec(argCount > 3 ? atoi(args[3]) : -1);
            PrivacySpec spec = PrivacySpec::new_spec(argCount > 3 ? atoi(args[3]) : -1);
            error = pBuf.strip(spec);
            error = pBuf.strip(spec);
+1 −1
Original line number Original line Diff line number Diff line
@@ -101,7 +101,7 @@ status_t PrivacyBuffer::stripField(const Privacy* parentPolicy, const PrivacySpe
}
}


// ================================================================================
// ================================================================================
PrivacyBuffer::PrivacyBuffer(const Privacy* policy, EncodedBuffer::iterator& data)
PrivacyBuffer::PrivacyBuffer(const Privacy* policy, EncodedBuffer::iterator data)
    : mPolicy(policy), mData(data), mProto(), mSize(0) {}
    : mPolicy(policy), mData(data), mProto(), mSize(0) {}


PrivacyBuffer::~PrivacyBuffer() {}
PrivacyBuffer::~PrivacyBuffer() {}
+2 −2
Original line number Original line Diff line number Diff line
@@ -34,7 +34,7 @@ using namespace android::util;
 */
 */
class PrivacyBuffer {
class PrivacyBuffer {
public:
public:
    PrivacyBuffer(const Privacy* policy, EncodedBuffer::iterator& data);
    PrivacyBuffer(const Privacy* policy, EncodedBuffer::iterator data);
    ~PrivacyBuffer();
    ~PrivacyBuffer();


    /**
    /**
@@ -60,7 +60,7 @@ public:


private:
private:
    const Privacy* mPolicy;
    const Privacy* mPolicy;
    EncodedBuffer::iterator& mData;
    EncodedBuffer::iterator mData;


    ProtoOutputStream mProto;
    ProtoOutputStream mProto;
    size_t mSize;
    size_t mSize;
+4 −4
Original line number Original line Diff line number Diff line
@@ -89,11 +89,11 @@ bool ReportRequestSet::containsSection(int id) { return mSections.containsSectio


IncidentMetadata::SectionStats* ReportRequestSet::sectionStats(int id) {
IncidentMetadata::SectionStats* ReportRequestSet::sectionStats(int id) {
    if (mSectionStats.find(id) == mSectionStats.end()) {
    if (mSectionStats.find(id) == mSectionStats.end()) {
        auto stats = mMetadata.add_sections();
        IncidentMetadata::SectionStats stats;
        stats->set_id(id);
        stats.set_id(id);
        mSectionStats[id] = stats;
        mSectionStats[id] = stats;
    }
    }
    return mSectionStats[id];
    return &mSectionStats[id];
}
}


// ================================================================================
// ================================================================================
@@ -182,7 +182,7 @@ Reporter::run_report_status_t Reporter::runReport(size_t* reportByteSize) {
            }
            }


            // Execute - go get the data and write it into the file descriptors.
            // Execute - go get the data and write it into the file descriptors.
            auto stats = batch.sectionStats(id);
            IncidentMetadata::SectionStats* stats = batch.sectionStats(id);
            int64_t startTime = uptimeMillis();
            int64_t startTime = uptimeMillis();
            err = (*section)->Execute(&batch);
            err = (*section)->Execute(&batch);
            int64_t endTime = uptimeMillis();
            int64_t endTime = uptimeMillis();
Loading