[GSoC 2018: XFS support] Week #7 and #8

Blog post by abx1 on Mon, 2018-07-02 21:28

Hi all,

I have been reading through the XFS documentation and looking more into the on-disk structures. Previously, I had looked into AG inode management, but not inode core structure. So I thought it would be better to look into how files, directories and links are stored on disk with inodes.

I implemented struct xfs_dinode_core, the core part of the inode, which includes stat data information about data and attribute forks. Data fork and attribute fork comes after core. The following struct is used by the class inode to get the information such as modification time, user ID, no of links from directories.

Haiku monthly activity report - 06/2018

Blog post by PulkoMandy on Mon, 2018-07-02 13:26

Hi there, I'm back for an activity report!

Let's see what happened last month. This report covers hrev51986-52054

Donations and funding

I just wanted to note that the 5 Haiku contributors who joined Liberapay are now part of a "team".

In case you missed it, Liberapay is a way to donate money to some Haiku contributors directly. They are an open source project, funded themselves by donations from their users, and with an interesting approach to funding free software and other commons creations. Your donations are anonymous if you use this channel, which makes sure it isn't used as a hidden contract work or bounty or any other kind of commercial system. So, have a look at the Haiku team on Liberapay and consider funding the work of either the team as a whole, or one contributor in particular.

[GSoC 2018 - TrackGit] Progress Report 9

Blog post by hrily on Mon, 2018-07-02 18:00

This is the ninth progress report for TrackGit project. I did the following in last week.

Implemented Pull command

I implemented the equivalent of git pull. The implementation was a little trickier as there was no direct API for pull in libgit2. The git pull command is combination of a fetch and then a merge. In merge there are three cases:

  1. Repository up to date
  2. Fast forward
  3. Merge commit

The merge commit can lead to conflicts. In such case user is shown with the list of conflicting files. I’m going to implement the flow of resolving such conflicts in coming days.

[GSoC 2018: SDHCI MMC Driver]: Week #6

Blog post by krish_iyer on Tue, 2018-06-26 15:04

Hello everyone! Here’s the update of week #6, in the last update we were not able to access the registers. When we tried mapping it, there were all zeros. so we knew there’s something wrong in the way we were accessing the register and in between this we got to know that qemu emulation for sdhc hardware only supports spec version 2 and 3 and the spec which we intended to implement was 4.2. Later, we got to know that this

[NOTICE] Data Security Incident

Blog post by kallisti5 on Mon, 2018-06-25 18:51

This afternoon, I noticed some strange heavy load on our Postgres database. After some initial investigation, it was discovered that a server misconfiguration left our Postgres database open to the internet since late January 2018.

Impact

  • Translation services (i18n.haiku-os.org)
    • Email addresses
    • Hashed passwords (old accounts sha1, newer accounts pbkdf2_sha256)
  • Trac (dev.haiku-os.org)
    • Usernames
    • Some emails (based on last session age)
    • We got extremely lucky that user passwords were not contained in the database for Trac.

We have notified every individual who was directly impacted via email on behalf of Haiku, Inc. to ensure they are aware of the situation and the data leak.

[GSoC 2018 - TrackGit] Progress Report 8

Blog post by hrily on Mon, 2018-06-25 18:24

This is the eighth progress report for TrackGit project. I did the following in last week.

Implemented Commit command

I implemented the equivalent of git commit in TrackGit. The implementation was a little bit trickier because libgit2 used a different logic when the commit is first or non-first. The link to commit.

Below is a screenshot of Commit window.

Commit Window

Added test for commit command

I also added the test case for commit command. This simply makes a commit and checks if the commit is made via status command.

[GSoC 2018 - TrackGit] Progress Report 7

Blog post by hrily on Mon, 2018-06-18 18:34

This is the seventh progress report for TrackGit project. I did the following in last week.

Merge Request on Haiku

At the start of the project, I had made a merge request on Haiku regarding Dynamic Add on menu. There were few comments on it which I forgot to check. I addressed those comments. Link to the merge request.

Implemented Add files command

I implemented the Add files command. This option adds the selected files to the git repository. Link to the commmit.

[GSoC 2018: SDHCI MMC Driver]: Second Phase Outline

Blog post by krish_iyer on Thu, 2018-06-14 11:51

Hey, folks! So we are at the end of first phase of the project and I had expected that I would be able to implement PIO but it seems that I have lagged a bit. Till now we have got our controller driver setting up the mmc bus and mmc disk driver to publish a slot. To implement PIO before DMA, also requires register mapping which we are currently working on. We tried it though but didn’t turn out well.

[GSoC 2018 - TrackGit] Progress Report 6

Blog post by hrily on Mon, 2018-06-11 19:10

This is the sixth progress report for TrackGit project. I did the following in last week.

Addressed Stephen’s comments

My mentor Stephen had put up few comments on my commits so far. I addressed them earlier this week. You can have a look at the comments thread here and here.

Made clone process threaded

The initial implementation of clone was blocking the UI thread. I used the pthread library to make the clone processes threaded. Now the clone command does not block UI.

[GSoC 2018: SDHCI MMC Driver]: Week #5

Blog post by krish_iyer on Mon, 2018-06-11 18:34

Hey, here I am with another update! Last time I mentioned about splitting up the module but due to time constraint we agreed to skip that currently and move forward. After setting up the bus, I thought it would be bus manager which needs to be setted up for data transfer and other read and write operations but it turns out to few things which need to be done before that and it’s actually not the bus manager who do these operations, it will just create an instance of the interrupts and the operations to be done, and call back after it’s done. I was referring to virtio subsystem’s driver layout so wasn’t able to notice a difference between virtio and sdhc and i.e there are slots that needs to be attached to the bus(MMC bus) unlike in virtio where devices are attached.